From a2c8d68448389be633a4974d15c7d78d567421ed Mon Sep 17 00:00:00 2001 From: Ivan Kochurkin Date: Mon, 20 Jun 2022 17:15:13 +0300 Subject: [PATCH] Pass testSourceUri to dynamicTest and to dynamicContainer for convenient navigation to tests data in IntelliJ Signed-off-by: Ivan Kochurkin --- .../test/org/antlr/v4/test/runtime/RuntimeTests.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/runtime-testsuite/test/org/antlr/v4/test/runtime/RuntimeTests.java b/runtime-testsuite/test/org/antlr/v4/test/runtime/RuntimeTests.java index 4d02a6e56f..3544f70fb8 100644 --- a/runtime-testsuite/test/org/antlr/v4/test/runtime/RuntimeTests.java +++ b/runtime-testsuite/test/org/antlr/v4/test/runtime/RuntimeTests.java @@ -20,6 +20,7 @@ import java.io.IOException; import java.net.URL; import java.nio.file.Files; +import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; import java.util.Arrays; @@ -95,18 +96,21 @@ public List runtimeTests() { for (String group : testDescriptors.keySet()) { ArrayList descriptorTests = new ArrayList<>(); RuntimeTestDescriptor[] descriptors = testDescriptors.get(group); + Path descriptorGroupPath = Paths.get(RuntimeTestUtils.resourcePath.toString(), "descriptors", group); for (RuntimeTestDescriptor descriptor : descriptors) { - descriptorTests.add(dynamicTest(descriptor.name, () -> { + Path descriptorTestPath = Paths.get(descriptorGroupPath.toString(), descriptor.name + ".txt"); + descriptorTests.add(dynamicTest(descriptor.name, descriptorTestPath.toUri(), () -> { try (RuntimeRunner runner = createRuntimeRunner()) { String errorMessage = test(descriptor, runner); if (errorMessage != null) { runner.setSaveTestDir(true); - fail(descriptor.name + "; " + errorMessage + "\nDirectory: " + runner.getTempDirPath()); + fail(descriptor.name + "; " + errorMessage + "\nTest directory: " + runner.getTempDirPath()); } } })); } - result.add(dynamicContainer(group, descriptorTests)); + + result.add(dynamicContainer(group, descriptorGroupPath.toUri(), Arrays.stream(descriptorTests.toArray(new DynamicNode[0])))); } return result;