/** Do not highlight if EOF interrupts the pattern. */ @Test public void testEndOfFileMatch() { fScanner = new MockScanner("${end of file is here:"); Assert.assertTrue(fRule.evaluate(fScanner).isUndefined()); Assert.assertEquals("", fScanner.getBuffer().substring(0, fScanner.getOffset())); }
/** Highlight the correct amount of nested braces. */ @Test public void testNestedBraceMatch() { fScanner = new MockScanner("${a{b{cd}e}f}g}"); Assert.assertFalse(fRule.evaluate(fScanner).isUndefined()); Assert.assertEquals("${a{b{cd}e}f}", fScanner.getBuffer().substring(0, fScanner.getOffset())); }
/** * Highlight everything up to the end of the line, if that occurs before the final closing brace. */ @Test public void testEndOfLineMatch() { fScanner = new MockScanner("${a{b}c\nd}"); Assert.assertFalse(fRule.evaluate(fScanner).isUndefined()); Assert.assertEquals("${a{b}c\n", fScanner.getBuffer().substring(0, fScanner.getOffset())); }
/** Highlight a pair of braces enclosing escaped braces. */ @Test public void testEscapedBraceMatch() { fScanner = new MockScanner("${basic\\}\\}}test}"); Assert.assertFalse(fRule.evaluate(fScanner).isUndefined()); Assert.assertEquals("${basic\\}\\}}", fScanner.getBuffer().substring(0, fScanner.getOffset())); }