diff --git a/mps/Makefile.in b/mps/Makefile.in index 960903ba43a..e77813f19d5 100644 --- a/mps/Makefile.in +++ b/mps/Makefile.in @@ -67,11 +67,14 @@ make-install-dirs: install: @INSTALL_TARGET@ -test-make-build: @BUILD_TARGET@ +test-make-build: + $(MAKE) clean + $(MAKE) $(TARGET_OPTS) VARIETY=hot CFLAGS="-DCONFIG_PF_ANSI -DCONFIG_THREAD_SINGLE -DCONFIG_PROTECTION_NONE" testansi + $(MAKE) clean $(MAKE) $(TARGET_OPTS) testci test-xcode-build: - $(XCODEBUILD) -config Release -target testci $(XCODEBUILD) -config Debug -target testci + $(XCODEBUILD) -config Release -target testci test: @TEST_TARGET@ diff --git a/mps/code/comm.gmk b/mps/code/comm.gmk index 837b025e974..64ce520b560 100644 --- a/mps/code/comm.gmk +++ b/mps/code/comm.gmk @@ -284,8 +284,9 @@ all: $(ALL_TARGETS) # testrun = "smoke test", fast enough to run before every commit # testci = continuous integration tests, must be known good # testall = all test cases, for ensuring quality of a release +# testansi = tests that run on the generic ("ANSI") platform -TEST_SUITES=testrun testci testall +TEST_SUITES=testrun testci testall testansi $(addprefix $(PFM)/$(VARIETY)/,$(TEST_SUITES)): $(TEST_TARGETS) ../tool/testrun.sh "$(PFM)/$(VARIETY)" "$(notdir $@)" diff --git a/mps/code/commpost.nmk b/mps/code/commpost.nmk index 46203a321a3..6c9966efe03 100644 --- a/mps/code/commpost.nmk +++ b/mps/code/commpost.nmk @@ -53,10 +53,10 @@ variety: $(PFM)\$(VARIETY)\$(TARGET) !ENDIF !ENDIF -# testrun testci testall +# testrun testci testall testansi # Runs automated test cases. -testrun testci testall: $(TEST_TARGETS) +testrun testci testall testansi: $(TEST_TARGETS) !IFDEF VARIETY ..\tool\testrun.bat $(PFM) $(VARIETY) $@ !ELSE diff --git a/mps/code/mps.xcodeproj/project.pbxproj b/mps/code/mps.xcodeproj/project.pbxproj index 1c9f39ff0f1..cd178d5f855 100644 --- a/mps/code/mps.xcodeproj/project.pbxproj +++ b/mps/code/mps.xcodeproj/project.pbxproj @@ -31,6 +31,18 @@ name = testall; productName = testrun; }; + 2291B6E318E4754D0004B79C /* testansi */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 2291B6E718E4754D0004B79C /* Build configuration list for PBXAggregateTarget "testansi" */; + buildPhases = ( + 2291B6E618E4754D0004B79C /* ShellScript */, + ); + dependencies = ( + 2291B6E418E4754D0004B79C /* PBXTargetDependency */, + ); + name = testansi; + productName = testrun; + }; 22CDE8EF16E9E97D00366D0A /* testrun */ = { isa = PBXAggregateTarget; buildConfigurationList = 22CDE8F016E9E97E00366D0A /* Build configuration list for PBXAggregateTarget "testrun" */; @@ -407,6 +419,13 @@ remoteGlobalIDString = 2291A5C1175CAFCA001D4920; remoteInfo = expt825; }; + 2291B6E518E4754D0004B79C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 31EEABDA156AAE9E00714D05 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 3104AFF1156D37A0000A585A; + remoteInfo = all; + }; 22B2BC3818B643AD00C33E63 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 31EEABDA156AAE9E00714D05 /* Project object */; @@ -3286,6 +3305,7 @@ 22CDE8EF16E9E97D00366D0A /* testrun */, 225F0AFC18E4453A003F2183 /* testci */, 225F0B0418E44549003F2183 /* testall */, + 2291B6E318E4754D0004B79C /* testansi */, 31EEABFA156AAF9D00714D05 /* mps */, 3114A632156E94DB001E0AA3 /* abqtest */, 22FACEE018880983000FDBC1 /* airtest */, @@ -3365,6 +3385,20 @@ shellScript = "../tool/testrun.sh \"$TARGET_BUILD_DIR\" \"$TARGET_NAME\""; showEnvVarsInLog = 0; }; + 2291B6E618E4754D0004B79C /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "../tool/testrun.sh \"$TARGET_BUILD_DIR\" \"$TARGET_NAME\""; + showEnvVarsInLog = 0; + }; 22CDE8F416E9E9D400366D0A /* ShellScript */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -3938,6 +3972,11 @@ target = 2291A5C1175CAFCA001D4920 /* expt825 */; targetProxy = 2291A5E7175CB20E001D4920 /* PBXContainerItemProxy */; }; + 2291B6E418E4754D0004B79C /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 3104AFF1156D37A0000A585A /* all */; + targetProxy = 2291B6E518E4754D0004B79C /* PBXContainerItemProxy */; + }; 22B2BC3918B643AD00C33E63 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 31FCAE0917692403008C034C /* scheme */; @@ -4446,6 +4485,27 @@ }; name = Release; }; + 2291B6E818E4754D0004B79C /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "testall copy"; + }; + name = Debug; + }; + 2291B6E918E4754D0004B79C /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "testall copy"; + }; + name = Release; + }; + 2291B6EA18E4754D0004B79C /* RASH */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "testall copy"; + }; + name = RASH; + }; 22B2BC3318B6434F00C33E63 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -5652,6 +5712,16 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 2291B6E718E4754D0004B79C /* Build configuration list for PBXAggregateTarget "testansi" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2291B6E818E4754D0004B79C /* Debug */, + 2291B6E918E4754D0004B79C /* Release */, + 2291B6EA18E4754D0004B79C /* RASH */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 22B2BC3218B6434F00C33E63 /* Build configuration list for PBXNativeTarget "scheme-advanced" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/mps/tool/testcases.txt b/mps/tool/testcases.txt index 96d3a4d2cff..c60e79d8ccd 100644 --- a/mps/tool/testcases.txt +++ b/mps/tool/testcases.txt @@ -5,14 +5,14 @@ abqtest airtest amcss amcsshe -amcssth =B =X job003561, job003703 +amcssth =B =T =X job003561, job003703 amsss amssshe apss arenacv awlut awluthe -awlutth =X +awlutth =T =X btcv bttest =N interactive djbench =N benchmark @@ -25,7 +25,7 @@ fotest gcbench =N benchmark locbwcss lockcov -lockutw3 =W +lockutw3 =T =W locusss locv messtest @@ -40,7 +40,7 @@ segsmss steptest teletest =N interactive walkt0 -zcoll =B =L +zcoll =B =L job003658 zmess ============= ================ ========================================== @@ -50,5 +50,6 @@ Key to flags B -- known Bad L -- Long runtime N -- Not an automated test case + T -- multi-Threaded W -- Windows-only X -- Unix-only diff --git a/mps/tool/testrun.bat b/mps/tool/testrun.bat index 06f947a25e3..6b683762136 100755 --- a/mps/tool/testrun.bat +++ b/mps/tool/testrun.bat @@ -33,9 +33,10 @@ mkdir %LOGDIR% @rem Determine which tests to run. set EXCLUDE= -if "%TESTSUITE%"=="testrun" set EXCLUDE=LNX -if "%TESTSUITE%"=="testci" set EXCLUDE=BNX -if "%TESTSUITE%"=="testall" set EXCLUDE=NX +if "%TESTSUITE%"=="testrun" set EXCLUDE=LNX +if "%TESTSUITE%"=="testci" set EXCLUDE=BNX +if "%TESTSUITE%"=="testall" set EXCLUDE=NX +if "%TESTSUITE%"=="testansi" set EXCLUDE=LNTX @rem Ensure that test cases don't pop up dialog box on abort() set MPS_TESTLIB_NOABORT=true diff --git a/mps/tool/testrun.sh b/mps/tool/testrun.sh index 35197dd879c..f5d54699cae 100755 --- a/mps/tool/testrun.sh +++ b/mps/tool/testrun.sh @@ -30,9 +30,10 @@ if [ $# -eq 1 ]; then TEST_SUITE=$1 echo "Test suite: $TEST_SUITE" case $TEST_SUITE in - testrun) EXCLUDE="LNW" ;; - testci) EXCLUDE="BNW" ;; - testall) EXCLUDE="NW" ;; + testrun) EXCLUDE="LNW" ;; + testci) EXCLUDE="BNW" ;; + testall) EXCLUDE="NW" ;; + testansi) EXCLUDE="LNTW" ;; *) echo "Test suite $TEST_SUITE not recognized." exit 1 ;;