package fitnesse.wikitext.test; import fitnesse.wikitext.parser.Scanner; import fitnesse.wikitext.parser.SymbolType; import org.junit.Test; import static org.junit.Assert.assertTrue; public class ScannerTest { @Test public void copyRestoresState() { Scanner scanner = new Scanner(new TestSourcePage(), "stuff"); Scanner backup = new Scanner(scanner); ParserTestHelper.assertScans("Text=stuff", scanner); ParserTestHelper.assertScans("", scanner); scanner.copy(backup); ParserTestHelper.assertScans("Text=stuff", scanner); } @Test public void terminatedLiteralAddsTerminator() { Scanner scanner = new Scanner(new TestSourcePage(), "stuff\n"); scanner.makeLiteral(SymbolType.Newline); assertTrue(scanner.getCurrent().isType(SymbolType.Newline)); } @Test public void unterminatedLiteralAddsEmpty() { Scanner scanner = new Scanner(new TestSourcePage(), "stuff"); scanner.makeLiteral(SymbolType.Newline); assertTrue(scanner.getCurrent().isType(SymbolType.Empty)); } }