2016-06-06 13:18:52 +03:00
TOP = ..
2021-02-11 17:35:04 +03:00
SUBDIRS = test-libraries
2016-05-26 16:06:52 +03:00
# disabled for now: mac-test
2016-04-21 19:01:11 +03:00
i n c l u d e $( TOP ) / M a k e . c o n f i g
2016-05-26 16:06:52 +03:00
i n c l u d e $( TOP ) / m k / r u l e s . m k
2021-02-12 13:13:43 +03:00
i f d e f E N A B L E _ D O T N E T
SUBDIRS += dotnet
e n d i f
2016-05-26 16:06:52 +03:00
MTOUCH = $( IOS_DESTDIR) /$( MONOTOUCH_PREFIX) /bin/mtouch
export MD_MTOUCH_SDK_ROOT = $( IOS_DESTDIR) /$( MONOTOUCH_PREFIX)
2018-05-22 01:53:24 +03:00
export MSBUILD_EXE_PATH = $( MONO_PREFIX) /lib/mono/msbuild/15.0/bin/MSBuild.dll
2018-05-10 00:00:38 +03:00
export TargetFrameworkFallbackSearchPaths = $( IOS_DESTDIR) /Library/Frameworks/Mono.framework/External/xbuild-frameworks
export MSBuildExtensionsPathFallbackPathsOverride = $( IOS_DESTDIR) /Library/Frameworks/Mono.framework/External/xbuild
2016-05-26 16:06:52 +03:00
export XAMMAC_FRAMEWORK_PATH = $( MAC_DESTDIR) /Library/Frameworks/Xamarin.Mac.framework/Versions/Current
export XamarinMacFrameworkRoot = $( MAC_DESTDIR) /Library/Frameworks/Xamarin.Mac.framework/Versions/Current
i f n e q ( $( RELEASE ) , )
2016-05-28 04:54:49 +03:00
i f n e q ( $( BITCODE ) , )
CONFIG = Release-bitcode
e l s e
2016-05-26 16:06:52 +03:00
CONFIG = Release
2016-05-28 04:54:49 +03:00
e n d i f
2016-05-26 16:06:52 +03:00
e l s e
CONFIG = Debug
e n d i f
i f e q ( $( V ) , )
i f e q ( $( BUILD_REVISION ) , )
# non-verbose local build
XHARNESS_VERBOSITY =
e l s e
# wrench build
XHARNESS_VERBOSITY = --verbose
e n d i f
e l s e
# verbose build
XHARNESS_VERBOSITY = --verbose
e n d i f
#
# To run all the tests, just do:
#
# make run-tests
#
# and go take a long tea break.
#
# For faster turnaround there are specific targets that can be used
# to run specific test suites. For more information read the README.md.
#
2017-03-30 19:01:15 +03:00
package-tests :
2022-09-16 19:36:51 +03:00
$( MAKE) mac-test-package.zip
2016-05-26 16:06:52 +03:00
2021-09-17 10:57:14 +03:00
test.config : Makefile $( TOP ) /Make .config $( TOP ) /mk /mono .mk $( TOP ) /eng /Version .Details .xml
2016-05-26 16:06:52 +03:00
@rm -f $@
@echo " MONOTOUCH_PREFIX= $( abspath $( MONOTOUCH_PREFIX) ) " >> $@
@echo " IOS_DESTDIR= $( abspath $( IOS_DESTDIR) ) " >> $@
@echo " MAC_DESTDIR= $( abspath $( MAC_DESTDIR) ) " >> $@
2016-06-06 13:48:53 +03:00
@echo " JENKINS_RESULTS_DIRECTORY= $( abspath $( JENKINS_RESULTS_DIRECTORY) ) " >> $@
2016-06-28 19:53:27 +03:00
@echo " INCLUDE_DEVICE= $( INCLUDE_DEVICE) " >> $@
2018-11-07 11:34:16 +03:00
@echo " XCODE_DEVELOPER_ROOT= $( XCODE_DEVELOPER_ROOT) " >> $@
2019-04-26 17:44:29 +03:00
@echo " MONO_IOS_SDK_DESTDIR= $( MONO_IOS_SDK_DESTDIR) " >> $@
@echo " MONO_MAC_SDK_DESTDIR= $( MONO_MAC_SDK_DESTDIR) " >> $@
2019-01-10 18:43:02 +03:00
@echo " ENABLE_XAMARIN= $( ENABLE_XAMARIN) " >> $@
2022-03-21 17:56:57 +03:00
@echo " DOTNET= $( DOTNET) " >> $@
2020-05-13 16:23:29 +03:00
@echo " IOS_SDK_VERSION= $( IOS_SDK_VERSION) " >> $@
@echo " TVOS_SDK_VERSION= $( TVOS_SDK_VERSION) " >> $@
@echo " WATCH_SDK_VERSION= $( WATCH_SDK_VERSION) " >> $@
2021-11-22 20:48:05 +03:00
@echo " MACOS_SDK_VERSION= $( MACOS_SDK_VERSION) " >> $@
2022-03-23 10:07:34 +03:00
@echo " DOTNET_BCL_DIR= $( DOTNET_BCL_DIR) " >> $@
2021-05-20 16:37:22 +03:00
@echo " ENABLE_DOTNET= $( ENABLE_DOTNET) " >> $@
2022-09-21 15:27:10 +03:00
@echo " INCLUDE_XAMARIN_LEGACY= $( INCLUDE_XAMARIN_LEGACY) " >> $@
2021-12-09 01:13:26 +03:00
@printf " $( foreach platform,$( DOTNET_PLATFORMS_UPPERCASE) ,DOTNET_$( platform) _RUNTIME_IDENTIFIERS = '$(DOTNET_$(platform)_RUNTIME_IDENTIFIERS)' \\ n) " | sed 's/^ //' >> $@
2022-04-07 09:17:01 +03:00
@printf " $( foreach platform,$( DOTNET_PLATFORMS_UPPERCASE) ,$( foreach rid,$( DOTNET_$( platform) _RUNTIME_IDENTIFIERS) ,DOTNET_$( rid) _ARCHITECTURES = '$(DOTNET_$(rid)_ARCHITECTURES)' \\ n) ) " | sed 's/^ //' >> $@
2022-03-23 10:07:34 +03:00
@echo " DOTNET_CSC_COMMAND=' $( DOTNET_CSC) ' " >> $@
2022-04-01 14:48:09 +03:00
@echo " DOTNET_TFM= $( DOTNET_TFM) " >> $@
2022-03-30 22:36:09 +03:00
@printf " $( foreach platform,$( DOTNET_PLATFORMS_UPPERCASE) ,$( platform) _NUGET_VERSION_NO_METADATA = $( $( platform) _NUGET_VERSION_NO_METADATA) \\ n) " | sed 's/^ //' >> $@
2016-05-26 16:06:52 +03:00
2021-09-17 10:57:14 +03:00
test-system.config : Makefile $( TOP ) /Make .config $( TOP ) /mk /mono .mk $( TOP ) /eng /Version .Details .xml
2017-01-16 09:24:14 +03:00
@rm -f $@
@echo " MONOTOUCH_PREFIX= $( IOS_FRAMEWORK_DIR) /Versions/Current " >> $@
@echo "IOS_DESTDIR=/" >> $@
@echo "MAC_DESTDIR=/" >> $@
@echo " JENKINS_RESULTS_DIRECTORY= $( abspath $( JENKINS_RESULTS_DIRECTORY) ) " >> $@
@echo " INCLUDE_DEVICE= $( INCLUDE_DEVICE) " >> $@
2019-04-26 17:44:29 +03:00
@echo " MONO_IOS_SDK_DESTDIR= $( MONO_IOS_SDK_DESTDIR) " >> $@
@echo " MONO_MAC_SDK_DESTDIR= $( MONO_MAC_SDK_DESTDIR) " >> $@
2022-03-21 17:56:57 +03:00
@echo " DOTNET= $( DOTNET) " >> $@
2020-05-13 16:23:29 +03:00
@echo " IOS_SDK_VERSION= $( IOS_SDK_VERSION) " >> $@
@echo " TVOS_SDK_VERSION= $( TVOS_SDK_VERSION) " >> $@
@echo " WATCH_SDK_VERSION= $( WATCH_SDK_VERSION) " >> $@
2021-11-22 20:48:05 +03:00
@echo " MACOS_SDK_VERSION= $( MACOS_SDK_VERSION) " >> $@
2022-04-01 14:48:09 +03:00
@echo " DOTNET_TFM= $( DOTNET_TFM) " >> $@
2022-03-30 22:36:09 +03:00
@echo " DOTNET_BCL_DIR= $( DOTNET_BCL_DIR) " >> $@
@echo " ENABLE_DOTNET= $( ENABLE_DOTNET) " >> $@
2022-09-21 15:27:10 +03:00
@echo " INCLUDE_XAMARIN_LEGACY= $( INCLUDE_XAMARIN_LEGACY) " >> $@
2022-03-30 22:36:09 +03:00
@printf " $( foreach platform,$( DOTNET_PLATFORMS_UPPERCASE) ,DOTNET_$( platform) _RUNTIME_IDENTIFIERS = '$(DOTNET_$(platform)_RUNTIME_IDENTIFIERS)' \\ n) " | sed 's/^ //' >> $@
2022-04-07 09:17:01 +03:00
@printf " $( foreach platform,$( DOTNET_PLATFORMS_UPPERCASE) ,$( foreach rid,$( DOTNET_$( platform) _RUNTIME_IDENTIFIERS) ,DOTNET_$( rid) _ARCHITECTURES = '$(DOTNET_$(rid)_ARCHITECTURES)' \\ n) ) " | sed 's/^ //' >> $@
2022-03-30 22:36:09 +03:00
@echo " DOTNET_CSC_COMMAND=' $( DOTNET_CSC) ' " >> $@
@printf " $( foreach platform,$( DOTNET_PLATFORMS_UPPERCASE) ,$( platform) _NUGET_VERSION_NO_METADATA = $( $( platform) _NUGET_VERSION_NO_METADATA) \\ n) " | sed 's/^ //' >> $@
2017-01-16 09:24:14 +03:00
2016-05-26 16:06:52 +03:00
clean-local ::
$( Q) $( SYSTEM_XBUILD) /t:Clean /p:Platform= iPhoneSimulator /p:Configuration= $( CONFIG) $( XBUILD_VERBOSITY) tests.sln
$( Q) $( SYSTEM_XBUILD) /t:Clean /p:Platform= iPhone /p:Configuration= $( CONFIG) $( XBUILD_VERBOSITY) tests.sln
$( Q) $( SYSTEM_XBUILD) /t:Clean /p:Platform= iPhoneSimulator /p:Configuration= $( CONFIG) $( XBUILD_VERBOSITY) tests-unified.sln
$( Q) $( SYSTEM_XBUILD) /t:Clean /p:Platform= iPhone /p:Configuration= $( CONFIG) $( XBUILD_VERBOSITY) tests-unified.sln
$( Q) $( SYSTEM_XBUILD) /t:Clean /p:Platform= iPhoneSimulator /p:Configuration= $( CONFIG) $( XBUILD_VERBOSITY) tests-tvos.sln
$( Q) $( SYSTEM_XBUILD) /t:Clean /p:Platform= iPhoneSimulator /p:Configuration= $( CONFIG) $( XBUILD_VERBOSITY) tests-tvos.sln
$( Q) $( SYSTEM_XBUILD) /t:Clean /p:Platform= iPhone /p:Configuration= $( CONFIG) $( XBUILD_VERBOSITY) tests-watchos.sln
$( Q) $( SYSTEM_XBUILD) /t:Clean /p:Platform= iPhone /p:Configuration= $( CONFIG) $( XBUILD_VERBOSITY) tests-watchos.sln
## run targets = build + [install] + exec
run run-all run-tests run-test :
$( Q) for subdir in $( SUBDIRS) ; do \
$( MAKE) -C $$ subdir run || exit 1; \
done
$( Q) $( MAKE) run-local
# separate build-dev-* entries because some of them are build with debug other (llvm) with release
2016-09-13 13:23:35 +03:00
build-dev-bots :
@echo "These tests are now in the mtouch test suite"
2016-05-26 16:06:52 +03:00
build-% run-% exec-% install-% :
@echo ""
@echo " \033[0;31mUnknown target: $@ \033[0m "
@echo ""
@echo "Syntax is: <action>-<platform>-<where>-<what>"
@echo " Action: build, install (only for device), exec, run (= build + install + exec)."
@echo " Platform: ios, tvos, watchos (can be skipped, in which case all platforms are executed)"
@echo " Where: "
@echo " ios: sim = [simclassic + simunified = [sim32, sim64]]; dev = [devclassic + devunified]"
@echo " tvos/watchos: sim, dev"
@echo " What: The test project to run (BCL tests do not need to be treated specially anymore, just use test project's name)"
@echo ""
@echo "Example:"
@echo ""
@echo " # this will run monotouch-test on an Apple TV device"
@echo " $ make run-tvos-dev-monotouch-test "
@echo ""
@echo "For more info read README.md."
@echo ""
@exit 1
check-result :
@test -z " $( BUILD_REVISION) " || echo " @MonkeyWrench: AddFile: $( abspath $( FILE) ) "
@if grep "Tests run" " $( FILE) " ; then \
if grep FAIL " $( FILE) " ; then \
test "x" = = " x $( BUILD_REVISION) " -o "x" = = " x $( TESTNAME) " || echo " @MonkeyWrench: AddSummary: <b> $( TESTNAME) failed: `grep " Tests run:" " $( FILE) " | sed 's/Tests run: //'`</b><br/>" ; \
echo Test run failed; \
exit 1; \
else \
test "x" = = " x $( BUILD_REVISION) " -o "x" = = " x $( TESTNAME) " || echo " @MonkeyWrench: AddSummary: $( TESTNAME) succeeded: `grep " Tests run:" " $( FILE) " | sed 's/Tests run: //'`<br/>" ; \
echo Test run succeeded; \
fi ; \
else \
test "x" = = " x $( BUILD_REVISION) " -o "x" = = " x $( TESTNAME) " || echo " @MonkeyWrench: AddSummary: <b><i> $( TESTNAME) crashed</i></b><br/> " ; \
echo Test run crashed; \
exit 1; \
fi
logdev :
$( MTOUCH) --logdev
build-test-libraries :
@$( MAKE) -C $( TOP) /tests/test-libraries
2021-09-16 18:23:07 +03:00
.stamp-xharness-configure : xharness /xharness .exe
2019-01-09 09:43:22 +03:00
$( Q_GEN) $( SYSTEM_MONO) --debug $( CURDIR) /$< $( XHARNESS_VERBOSITY) --configure --autoconf --rootdir $( CURDIR)
2021-09-16 18:23:07 +03:00
$( Q) touch $@
2016-05-26 16:06:52 +03:00
2021-09-16 18:23:07 +03:00
all-local :: .stamp -xharness -configure
2016-05-26 16:06:52 +03:00
2020-04-08 17:19:34 +03:00
$(TOP)/tools/common/SdkVersions.cs : $( TOP ) /tools /common /SdkVersions .cs .in
@$( MAKE) -C $( TOP) /tools/mtouch ../common/SdkVersions.cs
2016-05-26 16:06:52 +03:00
.stamp-src-project-files :
@$( MAKE) -C $( TOP) /src project-files
@touch $@
2020-05-01 17:30:57 +03:00
xharness/xharness.exe : $( xharness_dependencies ) test .config test -system .config .stamp -src -project -files $( TOP ) /tools /common /SdkVersions .cs
2021-08-04 10:30:16 +03:00
$( Q_GEN) $( SYSTEM_MSBUILD) " /bl: $@ .binlog " /restore $( MSBUILD_VERBOSITY_QUIET) xharness/xharness.csproj
2021-04-20 22:38:37 +03:00
xharness/xharness.csproj.inc : export BUILD_VERBOSITY =$( XBUILD_VERBOSITY )
2020-04-13 10:26:55 +03:00
xharness/xharness.csproj.inc : export ABSOLUTE_PATHS =1
- i n c l u d e x h a r n e s s / x h a r n e s s . c s p r o j . i n c
2016-05-26 16:06:52 +03:00
killall :
@killall "iPhone Simulator" >/dev/null 2>& 1 || true
@killall "iOS Simulator" >/dev/null 2>& 1 || true
@killall Touch.Server >/dev/null 2>& 1 || true
2016-11-04 11:13:33 +03:00
NUNIT_MSBUILD_DIR = $( TOP) /packages/NUnit.Runners.2.6.4/tools/lib
2020-10-15 09:45:43 +03:00
test-ios-tasks : test -macdev -tests test -macdev -tasks
test-macdev-tests : verify -system -vsmac -xcode -match
2022-09-05 11:55:41 +03:00
$( SYSTEM_MSBUILD) " /bl: $@ .binlog " $( TOP) /tests/msbuild/Xamarin.MacDev.Tests/Xamarin.MacDev.Tests.csproj /p:Configuration= Debug /r $( MSBUILD_VERBOSITY)
2022-03-17 12:12:32 +03:00
cd $( TOP) /tests/msbuild/Xamarin.MacDev.Tests && $( SYSTEM_XIBUILD) -t -- $( abspath $( TOP) /tools/nunit3-console-3.11.1) $( abspath $( TOP) /tests/msbuild/Xamarin.MacDev.Tests/bin/Debug/net472/Xamarin.MacDev.Tests.dll) " --result= $( abspath $( CURDIR) /TestResults_Xamarin.MacDev.Tests.xml) ;format=nunit2 " -labels= After $( TEST_FIXTURE)
2020-10-15 09:45:43 +03:00
test-macdev-tasks : verify -system -vsmac -xcode -match
2022-09-05 11:55:41 +03:00
$( SYSTEM_MSBUILD) " /bl: $@ .binlog " $( TOP) /tests/msbuild/Xamarin.MacDev.Tasks.Tests/Xamarin.MacDev.Tasks.Tests.csproj /p:Configuration= Debug /r $( MSBUILD_VERBOSITY)
2022-03-17 12:12:32 +03:00
cd $( TOP) /tests/msbuild/Xamarin.MacDev.Tasks.Tests && $( SYSTEM_XIBUILD) -t -- $( abspath $( TOP) /tools/nunit3-console-3.11.1) $( abspath $( TOP) /tests/msbuild/Xamarin.MacDev.Tasks.Tests/bin/Debug/net472/Xamarin.MacDev.Tasks.Tests.dll) " --result= $( abspath $( CURDIR) /TestResults_Xamarin.MacDev.Tasks.Tests.xml) " -labels= After $( TEST_FIXTURE)
2016-05-26 16:06:52 +03:00
2017-12-05 16:13:59 +03:00
test-install-sources :
2018-11-16 22:24:35 +03:00
$( SYSTEM_XIBUILD) -- $( TOP) /tools/install-source/InstallSourcesTests/InstallSourcesTests.csproj
cd $( NUNIT_MSBUILD_DIR) && $( SYSTEM_XIBUILD) -t -- ../nunit-console.exe ../../../../tools/install-source/InstallSourcesTests/bin/Release/InstallSourcesTests.dll -xml= TestResults_InstallSourcesTests.xml -labels $( TEST_FIXTURE) || touch .failed-stamp
2017-12-05 16:13:59 +03:00
@[ [ -z " $$ BUILD_REPOSITORY " ] ] || ( xsltproc $( TOP) /tests/HtmlTransform.xslt $( NUNIT_MSBUILD_DIR) /TestResults_InstallSourcesTests.xml > $( TOP) /tests/index.html && echo " @MonkeyWrench: AddFile: $$ PWD/index.html " )
@if test -e $( NUNIT_MSBUILD_DIR) /.failed-stamp; then rm $( NUNIT_MSBUILD_DIR) /.failed-stamp; exit 1; fi
2016-05-26 16:06:52 +03:00
i f d e f I N C L U D E _ M A C
mac-test-package.zip :
./package-mac-tests.sh
e l s e
mac-test-package.zip :
@echo Not enabled
e n d i f
2021-06-08 09:59:10 +03:00
i f d e f I N C L U D E _ D O T N E T
dotnet-test-package.7z :
./package-dotnet-tests.sh
e l s e
dotnet-test-package.7z :
@echo Not enabled
e n d i f
2016-05-26 16:06:52 +03:00
#XI
i f d e f I N C L U D E _ I O S
wrench-mtouch :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-btouch :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-build-unit-test-dev :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-sim-linksdk :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-sim-linkall :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-sim-dontlink :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
e l s e
wrench-mtouch wrench-btouch wrench-build-unit-test-dev :
@echo " iOS tests have been disabled [ $@ ] "
e n d i f
## XM
i f d e f I N C L U D E _ M A C
wrench-mac-dontlink :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-mac-mmp :
@echo Now part of wrench-mac-mmptest
wrench-mac-misc :
@echo Tests mac-misc tests removed
wrench-mac-apidiff :
@echo This is done in the normal api-diff target now.
wrench-mac-drm :
@echo "The DRM tests have all been removed."
wrench-mac-api :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-mac-mmptest :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-mac-msbuild :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-mac-binding-project :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
2016-06-08 20:45:31 +03:00
wrench-mac-introspection :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-06-08 20:45:31 +03:00
2017-11-29 00:10:56 +03:00
wrench-mac-xammac_tests :
2018-01-15 20:53:52 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
e l s e
wrench-mac-% :
@echo " Mac tests have been disabled [ $@ ] "
e n d i f
wrench-msbuild :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-docs :
2016-05-27 10:56:48 +03:00
i f d e f E N A B L E _ X A M A R I N
2016-05-26 16:06:52 +03:00
i f d e f I N C L U D E _ I O S
2016-11-21 15:09:54 +03:00
$( MAKE) -C $( MACCORE_PATH) update-docs
2016-05-26 16:06:52 +03:00
e l s e
@echo " iOS tests have been disabled [ $@ ] "
e n d i f
2016-05-27 10:56:48 +03:00
e l s e
@echo " Docs have been disabled [ $@ ] "
e n d i f
2016-05-26 16:06:52 +03:00
# the wrenchhelper-* targets are generated.
wrench-sim-% :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-bcl-sim-% :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
2016-05-26 16:06:52 +03:00
wrench-% :
2017-11-22 18:03:36 +03:00
@echo Not here anymore
wrench-jenkins : xharness /xharness .exe
$( Q) rm -f $@ -failed.stamp
2022-03-11 07:36:37 +03:00
$( Q) ulimit -n 4096 && $( SYSTEM_MONO) --trace= E:all --debug $( CURDIR) /$< $( XHARNESS_VERBOSITY) --jenkins --autoconf --rootdir $( CURDIR) --sdkroot $( XCODE_DEVELOPER_ROOT) --label run-all-tests,skip-device-tests --markdown-summary= $( abspath $( CURDIR) ) /TestSummary.md $( TESTS_PERIODIC_COMMAND) --use-system= true || echo " $$ ? " > $@ -failed.stamp
2017-11-22 18:03:36 +03:00
@echo " @MonkeyWrench: SetSummary: <br/>`cat $( abspath $( CURDIR) ) /TestSummary.md | awk 1 ORS='<br/>'` "
@echo " @MonkeyWrench: AddFile: $( abspath $( CURDIR) ) /TestSummary.md "
$( Q) if test -e $@ -failed.stamp; then EC = ` cat $@ -failed.stamp` ; rm -f $@ -failed.stamp; exit $$ EC; fi
2016-04-21 19:01:11 +03:00
2017-10-17 13:03:50 +03:00
wrench-xtro :
2018-01-15 20:53:52 +03:00
@echo Not here anymore
2017-10-17 13:03:50 +03:00
2016-06-06 13:48:53 +03:00
jenkins : xharness /xharness .exe
2022-06-23 15:54:21 +03:00
$( Q) $( SYSTEM_MONO) --trace= E:all,-E:System.Reflection.ReflectionTypeLoadException --debug $( CURDIR) /$< $( XHARNESS_VERBOSITY) --jenkins --autoconf --rootdir $( CURDIR) --sdkroot $( XCODE_DEVELOPER_ROOT) --markdown-summary= $( abspath $( CURDIR) ) /TestSummary.md --use-system= true $( TESTS_EXTRA_ARGUMENTS) $( TESTS_PERIODIC_COMMAND)
2017-07-13 15:25:48 +03:00
2017-08-11 22:28:49 +03:00
# This will launch xharness' interactive test runner in the system's default browser
runner : xharness /xharness .exe
@echo "Running xharness in server mode. Press Ctrl-C to exit (or click Quit / press Q in the browser page)"
2019-01-09 09:43:22 +03:00
$( Q) $( SYSTEM_MONO) $( CURDIR) /xharness/xharness.exe $( XHARNESS_VERBOSITY) --jenkins:server --autoconf --rootdir $( CURDIR) --sdkroot $( XCODE_DEVELOPER_ROOT)
2017-08-11 22:28:49 +03:00
2017-08-09 18:23:54 +03:00
# This makefile target will run the device tests using the Xamarin.iOS version
# installed on the system.
vsts-device-tests : xharness /xharness .exe
2019-09-16 16:11:49 +03:00
$( MAKE) -C $( TOP) /builds .stamp-mono-ios-sdk-destdir download -j
2019-05-09 14:06:49 +03:00
$( Q) ulimit -n 4096 && $( SYSTEM_MONO) --debug $( CURDIR) /$< $( XHARNESS_VERBOSITY) --jenkins --autoconf --rootdir $( CURDIR) --sdkroot $( XCODE_DEVELOPER_ROOT) --use-system:true --label= skip-all-tests,run-device-tests,run-bcl-tests --markdown-summary= $( CURDIR) /TestSummary.md $( TESTS_EXTRA_ARGUMENTS) $( TESTS_PERIODIC_COMMAND)
2017-08-09 18:23:54 +03:00
2017-07-13 15:25:48 +03:00
i f d e f E N A B L E _ X A M A R I N
wrench-launch-external wrench-report-external :
$( MAKE) -C $( MACCORE_PATH) /tests/external $@
2019-11-08 00:41:24 +03:00
# This will schedule a manual device test run for the current commit. The current commit must already have packages.
launch-manual-device-tests :
./launch-manual-device-tests.sh
2020-04-15 09:01:59 +03:00
# This will schedule a manual sample test run for the current commit. The current commit must already have packages.
launch-manual-sample-tests :
./launch-manual-sample-tests.sh
2017-07-13 15:25:48 +03:00
e l s e
wrench-launch-external wrench-report-external :
@echo "External tests have been disabled"
e n d i f
2020-01-10 20:41:18 +03:00
verify-system-vsmac-xcode-match :
@SYSTEM_XCODE= $$ ( dirname $$ ( dirname $$ ( xcode-select -p) ) ) ; \
VSMAC_XCODE = $$ ( /usr/libexec/PlistBuddy -c 'print :AppleSdkRoot' ~/Library/Preferences/Xamarin/Settings.plist) ; \
if [ [ " $$ SYSTEM_XCODE " != " $$ VSMAC_XCODE " ] ] ; then echo " Error: the system's Xcode ( $$ SYSTEM_XCODE) does not match the Xcode selected in Visual Studio for Mac ( $$ VSMAC_XCODE). This will make tests fail in non-trivial ways, so please make sure both match the expected Xcode ( $( shell dirname $( shell dirname $( XCODE_DEVELOPER_ROOT) ) ) ). " ; exit 1; fi
2022-03-11 07:36:37 +03:00
package-test-libraries.zip :
$( Q) @$( MAKE) all -C test-libraries
$( Q) mkdir -p $@ .tmpdir
$( Q) $( CP) -a test-libraries/* $@ .tmpdir
2022-03-28 09:59:29 +03:00
$( Q_GEN) cd $@ .tmpdir && zip -9r --symlinks $( abspath $@ ) .
2022-03-11 07:36:37 +03:00
$( Q) rm -rf $@ .tmpdir