added label syntax support and highlighting
This commit is contained in:
1 parent
660a80a26b
commit
26b8370b01
12 files changed
+122
-19
No files matched your search
@@ -21,6 +21,15 @@ import kotlin.test.assertEquals
|
||||
|
||||
class LyngFormatterTest {
|
||||
|
||||
@Test
|
||||
fun labelFormatting() {
|
||||
val src = "return @label; break @outer; continue @inner"
|
||||
val expected = "return@label; break@outer; continue@inner"
|
||||
val cfg = LyngFormatConfig(applySpacing = true)
|
||||
val out = LyngFormatter.format(src, cfg)
|
||||
assertEquals(expected, out)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun reindent_simpleFunction() {
|
||||
val src = """
|
||||
|
||||
@@ -25,6 +25,16 @@ class HighlightMappingTest {
|
||||
private fun spansToLabeled(text: String, spans: List<HighlightSpan>): List<Pair<String, HighlightKind>> =
|
||||
spans.map { text.substring(it.range.start, it.range.endExclusive) to it.kind }
|
||||
|
||||
@Test
|
||||
fun returnAndExits() {
|
||||
val text = "return 42; break@outer null"
|
||||
val spans = SimpleLyngHighlighter().highlight(text)
|
||||
val labeled = spansToLabeled(text, spans)
|
||||
assertTrue(labeled.any { it.first == "return" && it.second == HighlightKind.Keyword })
|
||||
assertTrue(labeled.any { it.first == "break" && it.second == HighlightKind.Keyword })
|
||||
assertTrue(labeled.any { it.first == "@outer" && it.second == HighlightKind.Label })
|
||||
}
|
||||
|
||||
@Test
|
||||
fun keywordsAndIdentifiers() {
|
||||
val text = "a and b or not c"
|
||||
|
||||
Reference in new issue
Block a user