X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2Fbuild%2Ftests.make;h=f44e0574c9692e53cab8e0987dc45d050b8bbc76;hb=96c006b637dce4dfaa6e0efdb4d1122ec8bdb286;hp=175b2da5056a9f25fb728d43d642b9c75f87419f;hpb=3712cf10bdd4a84474ddb724e394af55f25d6440;p=mono.git diff --git a/mcs/build/tests.make b/mcs/build/tests.make index 175b2da5056..f44e0574c96 100644 --- a/mcs/build/tests.make +++ b/mcs/build/tests.make @@ -18,7 +18,13 @@ TEST_RUNTIME_WRAPPERS_PATH = $(shell dirname $(RUNTIME))/_tmpinst/bin ## Unit test support ifndef NO_TEST + +ifdef NUNIT_LITE +test_nunit_lib = nunitlite.dll +else test_nunit_lib = nunit.framework.dll nunit.core.dll nunit.util.dll nunit.mocks.dll +endif + test_nunit_dep = $(test_nunit_lib:%=$(topdir)/class/lib/$(PROFILE)/%) test_nunit_ref = $(test_nunit_dep:%=-r:%) tests_CLEAN_FILES += TestResult*.xml @@ -40,9 +46,17 @@ endif ifndef NO_TEST $(test_nunit_dep): $(topdir)/build/deps/nunit-$(PROFILE).stamp @if test -f $@; then :; else rm -f $<; $(MAKE) $<; fi + +ifdef NUNIT_LITE +$(topdir)/build/deps/nunit-$(PROFILE).stamp: + cd ${topdir}/tools/nunit-lite && $(MAKE) + echo "stamp" >$@ +else $(topdir)/build/deps/nunit-$(PROFILE).stamp: cd ${topdir}/nunit24 && $(MAKE) echo "stamp" >$@ +endif + tests_CLEAN_FILES += $(topdir)/build/deps/nunit-$(PROFILE).stamp endif @@ -61,14 +75,24 @@ run-test-ondotnet-local: run-test-ondotnet-lib TEST_HARNESS_EXCLUDES = -exclude=$(PLATFORM_TEST_HARNESS_EXCLUDES)NotWorking,ValueAdd,CAS,InetAccess TEST_HARNESS_EXCLUDES_ONDOTNET = /exclude:$(PLATFORM_TEST_HARNESS_EXCLUDES)NotDotNet,CAS +ifdef NUNIT_LITE +NOSHADOW_FLAG = +NUNIT_XML_FLAG = -format:nunit2 -result: +OUTPUT_FILE_FLAG=-out +else +OUTPUT_FILE_FLAG=-output +NOSHADOW_FLAG = -noshadow +NUNIT_XML_FLAG = -xml= +endif + ifdef TEST_HARNESS_VERBOSE TEST_HARNESS_OUTPUT = -labels TEST_HARNESS_OUTPUT_ONDOTNET = -labels TEST_HARNESS_POSTPROC = : TEST_HARNESS_POSTPROC_ONDOTNET = : else -TEST_HARNESS_OUTPUT = -output=TestResult-$(PROFILE).log -TEST_HARNESS_OUTPUT_ONDOTNET = -output=TestResult-ondotnet-$(PROFILE).log +TEST_HARNESS_OUTPUT = $(OUTPUT_FILE_FLAG)=TestResult-$(PROFILE).log +TEST_HARNESS_OUTPUT_ONDOTNET = $(OUTPUT_FILE_FLAG)=TestResult-ondotnet-$(PROFILE).log TEST_HARNESS_POSTPROC = (echo ''; cat TestResult-$(PROFILE).log) | sed '1,/^Tests run: /d'; xsltproc $(topdir)/build/nunit-summary.xsl TestResult-$(PROFILE).xml >> TestResult-$(PROFILE).log TEST_HARNESS_POSTPROC_ONDOTNET = (echo ''; cat TestResult-ondotnet-$(PROFILE).log) | sed '1,/^Tests run: /d'; xsltproc $(topdir)/build/nunit-summary.xsl TestResult-ondotnet-$(PROFILE).xml >> TestResult-ondotnet-$(PROFILE).log endif @@ -84,7 +108,7 @@ endif ## FIXME: i18n problem in the 'sed' command below run-test-lib: test-local ok=:; \ - PATH="$(TEST_RUNTIME_WRAPPERS_PATH):$(PATH)" MONO_REGISTRY_PATH="$(HOME)/.mono/registry" MONO_TESTS_IN_PROGRESS="yes" $(TEST_RUNTIME) $(RUNTIME_FLAGS) $(TEST_HARNESS) $(test_assemblies) -noshadow $(TEST_HARNESS_FLAGS) $(LOCAL_TEST_HARNESS_FLAGS) $(TEST_HARNESS_EXCLUDES) $(TEST_HARNESS_OUTPUT) -xml=TestResult-$(PROFILE).xml $(FIXTURE_ARG) $(TESTNAME_ARG)|| ok=false; \ + PATH="$(TEST_RUNTIME_WRAPPERS_PATH):$(PATH)" MONO_REGISTRY_PATH="$(HOME)/.mono/registry" MONO_TESTS_IN_PROGRESS="yes" $(TEST_RUNTIME) $(RUNTIME_FLAGS) $(TEST_HARNESS) $(test_assemblies) $(NOSHADOW_FLAG) $(TEST_HARNESS_FLAGS) $(LOCAL_TEST_HARNESS_FLAGS) $(TEST_HARNESS_EXCLUDES) $(TEST_HARNESS_OUTPUT) $(NUNIT_XML_FLAG)TestResult-$(PROFILE).xml $(FIXTURE_ARG) $(TESTNAME_ARG)|| ok=false; \ if [ ! -f "TestResult-$(PROFILE).xml" ]; then echo "The test runner didn't produce a test result XML, probably due to a crash of the runtime. Check the log for more details." > TestResult-$(PROFILE).xml; fi; \ $(TEST_HARNESS_POSTPROC) ; $$ok @@ -92,7 +116,7 @@ run-test-lib: test-local run-test-ondotnet-lib: LOCAL_TEST_COMPILER_ONDOTNET_FLAGS:=-d:RUN_ONDOTNET run-test-ondotnet-lib: test-local ok=:; \ - $(TEST_HARNESS) $(test_assemblies) -noshadow $(TEST_HARNESS_FLAGS) $(LOCAL_TEST_HARNESS_ONDOTNET_FLAGS) $(TEST_HARNESS_EXCLUDES_ONDOTNET) $(TEST_HARNESS_OUTPUT_ONDOTNET) -xml=TestResult-ondotnet-$(PROFILE).xml $(FIXTURE_ARG) $(TESTNAME_ARG) || ok=false; \ + $(TEST_HARNESS) $(test_assemblies) $(NOSHADOW_FLAG) $(TEST_HARNESS_FLAGS) $(LOCAL_TEST_HARNESS_ONDOTNET_FLAGS) $(TEST_HARNESS_EXCLUDES_ONDOTNET) $(TEST_HARNESS_OUTPUT_ONDOTNET) $(NUNIT_XML_FLAG)=TestResult-ondotnet-$(PROFILE).xml $(FIXTURE_ARG) $(TESTNAME_ARG) || ok=false; \ $(TEST_HARNESS_POSTPROC_ONDOTNET) ; $$ok