@@ -492,7 +492,9 @@ class GraalPythonTags(object):
492492 unittest_posix = 'python-unittest-posix'
493493 unittest_standalone = 'python-unittest-standalone'
494494 unittest_gradle_plugin = 'python-unittest-gradle-plugin'
495+ unittest_gradle_plugin_long_run = 'python-unittest-gradle-plugin-long-run'
495496 unittest_maven_plugin = 'python-unittest-maven-plugin'
497+ unittest_maven_plugin_long_run = 'python-unittest-maven-plugin-long-run'
496498 tagged = 'python-tagged-unittest'
497499 svmunit = 'python-svm-unittest'
498500 svmunit_sandboxed = 'python-svm-unittest-sandboxed'
@@ -1151,6 +1153,47 @@ def get_wrapper_urls(wrapper_properties_file, keys):
11511153
11521154 return ret
11531155
1156+ def setup_graalpy_plugin_tests ():
1157+ gvm_jdk = graalvm_jdk ()
1158+ standalone_home = graalpy_standalone_home ('jvm' )
1159+ mvn_repo_path , version , env = deploy_local_maven_repo ()
1160+
1161+ env ['JAVA_HOME' ] = gvm_jdk
1162+ env ['PYTHON_STANDALONE_HOME' ] = standalone_home
1163+
1164+ # setup maven downloader overrides
1165+ env ['MAVEN_REPO_OVERRIDE' ] = "," .join ([
1166+ f"{ pathlib .Path (mvn_repo_path ).as_uri ()} /" ,
1167+ mx_urlrewrites .rewriteurl ('https://repo1.maven.org/maven2/' ),
1168+ ])
1169+
1170+ env ["org.graalvm.maven.downloader.version" ] = version
1171+ env ["org.graalvm.maven.downloader.repository" ] = f"{ pathlib .Path (mvn_repo_path ).as_uri ()} /"
1172+
1173+ return standalone_home , env
1174+
1175+ def setup_maven_plugin_tests ():
1176+ standalone_home , env = setup_graalpy_plugin_tests ()
1177+
1178+ override_path = os .path .join (SUITE .get_mx_output_dir (), 'maven-properties-override' )
1179+ original_props_file = "graalpython/com.oracle.graal.python.test/src/tests/standalone/mvnw/.mvn/wrapper/maven-wrapper.properties"
1180+ mx .copyfile (original_props_file , override_path )
1181+ mx_graalpython_gradleproject .patch_distribution_url (override_path , original_props_file , escape_colon = False )
1182+ env ['MAVEN_PROPERTIES_OVERRIDE' ] = override_path
1183+
1184+ return standalone_home , env
1185+
1186+ def setup_gradle_plugin_tests ():
1187+ standalone_home , env = setup_graalpy_plugin_tests ()
1188+
1189+ override_path = os .path .join (SUITE .get_mx_output_dir (), 'gradle-properties-override' )
1190+ original_props_file = "graalpython/com.oracle.graal.python.test/src/tests/standalone/gradle/gradle-test-project/gradle/wrapper/gradle-wrapper.properties"
1191+ mx .copyfile (original_props_file , override_path )
1192+ mx_graalpython_gradleproject .patch_distribution_url (override_path , original_props_file )
1193+ env ['GRADLE_PROPERTIES_OVERRIDE' ] = override_path
1194+
1195+ return standalone_home , env
1196+
11541197def graalpython_gate_runner (args , tasks ):
11551198 report = lambda : (not is_collecting_coverage ()) and task
11561199 nonZeroIsFatal = not is_collecting_coverage ()
@@ -1285,28 +1328,23 @@ def graalpython_gate_runner(args, tasks):
12851328
12861329 with Task ('GraalPython gradle plugin tests' , tasks , tags = [GraalPythonTags .unittest_gradle_plugin ]) as task :
12871330 if task :
1288- gvm_jdk = graalvm_jdk ()
1289- standalone_home = graalpy_standalone_home ('jvm' )
1290- mvn_repo_path , version , env = deploy_local_maven_repo ()
1291-
1331+ standalone_home , env = setup_gradle_plugin_tests ()
12921332 env ['ENABLE_GRADLE_PLUGIN_UNITTESTS' ] = 'true'
1293- env ['JAVA_HOME' ] = gvm_jdk
1294- env ['PYTHON_STANDALONE_HOME' ] = standalone_home
12951333
1296- # setup maven downloader overrides
1297- env ['MAVEN_REPO_OVERRIDE' ] = "," .join ([
1298- f"{ pathlib .Path (mvn_repo_path ).as_uri ()} /" ,
1299- mx_urlrewrites .rewriteurl ('https://repo1.maven.org/maven2/' ),
1300- ])
1334+ # run the test
1335+ mx .logv (f"running with os.environ extended with: { env = } " )
13011336
1302- override_path = os .path .join (SUITE .get_mx_output_dir (), 'gradle-properties-override' )
1303- original_props_file = "graalpython/com.oracle.graal.python.test/src/tests/standalone/gradle/gradle-test-project/gradle/wrapper/gradle-wrapper.properties"
1304- mx .copyfile (original_props_file , override_path )
1305- mx_graalpython_gradleproject .patch_distribution_url (override_path , original_props_file )
1306- env ['GRADLE_PROPERTIES_OVERRIDE' ] = override_path
1337+ run_python_unittests (
1338+ os .path .join (standalone_home , 'bin' , _graalpy_launcher ()),
1339+ paths = ["graalpython/com.oracle.graal.python.test/src/tests/standalone/test_gradle_plugin.py" ],
1340+ env = env ,
1341+ parallel = 3 ,
1342+ )
13071343
1308- env ["org.graalvm.maven.downloader.version" ] = version
1309- env ["org.graalvm.maven.downloader.repository" ] = f"{ pathlib .Path (mvn_repo_path ).as_uri ()} /"
1344+ with Task ('GraalPython gradle plugin long running tests' , tasks , tags = [GraalPythonTags .unittest_gradle_plugin_long_run ]) as task :
1345+ if task :
1346+ standalone_home , env = setup_gradle_plugin_tests ()
1347+ env ['ENABLE_GRADLE_PLUGIN_LONG_RUNNING_UNITTESTS' ] = 'true'
13101348
13111349 # run the test
13121350 mx .logv (f"running with os.environ extended with: { env = } " )
@@ -1320,28 +1358,23 @@ def graalpython_gate_runner(args, tasks):
13201358
13211359 with Task ('GraalPython maven plugin tests' , tasks , tags = [GraalPythonTags .unittest_maven_plugin ]) as task :
13221360 if task :
1323- gvm_jdk = graalvm_jdk ()
1324- standalone_home = graalpy_standalone_home ('jvm' )
1325- mvn_repo_path , version , env = deploy_local_maven_repo ()
1326-
1361+ standalone_home , env = setup_maven_plugin_tests ()
13271362 env ['ENABLE_MAVEN_PLUGIN_UNITTESTS' ] = 'true'
1328- env ['JAVA_HOME' ] = gvm_jdk
1329- env ['PYTHON_STANDALONE_HOME' ] = standalone_home
13301363
1331- # setup maven downloader overrides
1332- env ['MAVEN_REPO_OVERRIDE' ] = "," .join ([
1333- f"{ pathlib .Path (mvn_repo_path ).as_uri ()} /" ,
1334- mx_urlrewrites .rewriteurl ('https://repo1.maven.org/maven2/' ),
1335- ])
1364+ # run the test
1365+ mx .logv (f"running with os.environ extended with: { env = } " )
13361366
1337- override_path = os .path .join (SUITE .get_mx_output_dir (), 'maven-properties-override' )
1338- original_props_file = "graalpython/com.oracle.graal.python.test/src/tests/standalone/mvnw/.mvn/wrapper/maven-wrapper.properties"
1339- mx .copyfile (original_props_file , override_path )
1340- mx_graalpython_gradleproject .patch_distribution_url (override_path , original_props_file , escape_colon = False )
1341- env ['MAVEN_PROPERTIES_OVERRIDE' ] = override_path
1367+ run_python_unittests (
1368+ os .path .join (standalone_home , 'bin' , _graalpy_launcher ()),
1369+ paths = ["graalpython/com.oracle.graal.python.test/src/tests/standalone/test_maven_plugin.py" ],
1370+ env = env ,
1371+ parallel = 3 ,
1372+ )
13421373
1343- env ["org.graalvm.maven.downloader.version" ] = version
1344- env ["org.graalvm.maven.downloader.repository" ] = f"{ pathlib .Path (mvn_repo_path ).as_uri ()} /"
1374+ with Task ('GraalPython maven plugin long runnning tests' , tasks , tags = [GraalPythonTags .unittest_maven_plugin_long_run ]) as task :
1375+ if task :
1376+ standalone_home , env = setup_maven_plugin_tests ()
1377+ env ['ENABLE_MAVEN_PLUGIN_LONG_RUNNING_UNITTESTS' ] = 'true'
13451378
13461379 # run the test
13471380 mx .logv (f"running with os.environ extended with: { env = } " )
0 commit comments