From 37f6e510aa050b356a222db149906ff0bba00a3f Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Thu, 21 Dec 2023 16:03:34 +0000 Subject: Add basic test for FileFragmentSource::at() --- .../compiler/sources/FileFragmentSourceTests.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/test/java/org') 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("", "abcdefg"); + + var fragment = source.at(2, 5); + + assertThat(fragment, equalTo(new FileFragmentSource("", "abcdefg", 2, 5))); + } + + @Test + public void atReturnsSubsectionOfIncompleteSource() { + var source = FileFragmentSource.file("", "abcdefg"); + + var fragment = source.at(1, 6).at(1, 4); + + assertThat(fragment, equalTo(new FileFragmentSource("", "abcdefg", 2, 5))); + } } -- cgit v1.2.3