aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2025-03-09 22:07:16 +0000
committerMichael Williamson <mike@zwobble.org>2025-03-09 22:07:45 +0000
commitd1f8d0cc3a947d0c637d24be0491085823feb847 (patch)
tree4041c09001c28e4e0d686e1b565a28ee2d435c44 /src/test/java
parente42206226a77fccc397381089a8becef3a4199e2 (diff)
Extract Examples.exampleDirectories()
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/shedlang/compiler/backends/ExampleTests.java4
-rw-r--r--src/test/java/org/shedlang/compiler/backends/Examples.java20
2 files changed, 21 insertions, 3 deletions
diff --git a/src/test/java/org/shedlang/compiler/backends/ExampleTests.java b/src/test/java/org/shedlang/compiler/backends/ExampleTests.java
index f7d8f055..7e939696 100644
--- a/src/test/java/org/shedlang/compiler/backends/ExampleTests.java
+++ b/src/test/java/org/shedlang/compiler/backends/ExampleTests.java
@@ -25,9 +25,7 @@ import static org.zwobble.precisely.Matchers.equalTo;
public abstract class ExampleTests {
@TestFactory
public Stream<DynamicTest> tests() {
- var examplesRoot = ShedCompilerFiles.getRoot().resolve("examples");
- return Arrays.stream(examplesRoot.toFile()
- .listFiles(file -> file.isDirectory()))
+ return Examples.exampleDirectories()
.map(exampleDirectory -> DynamicTest.dynamicTest(
exampleDirectory.getName(),
() -> runTest(exampleDirectory)
diff --git a/src/test/java/org/shedlang/compiler/backends/Examples.java b/src/test/java/org/shedlang/compiler/backends/Examples.java
new file mode 100644
index 00000000..f5b93fd6
--- /dev/null
+++ b/src/test/java/org/shedlang/compiler/backends/Examples.java
@@ -0,0 +1,20 @@
+package org.shedlang.compiler.backends;
+
+import org.shedlang.compiler.filesystem.ShedCompilerFiles;
+
+import java.io.File;
+import java.util.Arrays;
+import java.util.stream.Stream;
+
+public class Examples {
+ private Examples() {
+ }
+
+ /// The directory of each example.
+ public static Stream<File> exampleDirectories() {
+ var examplesRoot = ShedCompilerFiles.getRoot().resolve("examples");
+
+ return Arrays.stream(examplesRoot.toFile()
+ .listFiles(file -> file.isDirectory()));
+ }
+}