diff options
Diffstat (limited to 'src/test/java')
| -rw-r--r-- | src/test/java/org/shedlang/compiler/sources/FileFragmentSourceTests.java | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/test/java/org/shedlang/compiler/sources/FileFragmentSourceTests.java b/src/test/java/org/shedlang/compiler/sources/FileFragmentSourceTests.java index 534f10c5..ce43303c 100644 --- a/src/test/java/org/shedlang/compiler/sources/FileFragmentSourceTests.java +++ b/src/test/java/org/shedlang/compiler/sources/FileFragmentSourceTests.java @@ -1,6 +1,7 @@ package org.shedlang.compiler.sources; import org.junit.jupiter.api.DynamicTest; +import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestFactory; import java.util.List; @@ -107,4 +108,22 @@ public class FileFragmentSourceTests { assertThat(source.describe(), equalTo(testCase.expectedContext)); })).collect(Collectors.toList()); } + + @Test + public void atReturnsSubsectionOfCompleteSource() { + var source = FileFragmentSource.file("<filename>", "abcdefg"); + + var fragment = source.at(2, 5); + + assertThat(fragment, equalTo(new FileFragmentSource("<filename>", "abcdefg", 2, 5))); + } + + @Test + public void atReturnsSubsectionOfIncompleteSource() { + var source = FileFragmentSource.file("<filename>", "abcdefg"); + + var fragment = source.at(1, 6).at(1, 4); + + assertThat(fragment, equalTo(new FileFragmentSource("<filename>", "abcdefg", 2, 5))); + } } |
