From 2794af126b0f1ddc2234780da9eef53b0f1e9ce3 Mon Sep 17 00:00:00 2001 From: dabico Date: Tue, 6 Feb 2024 12:00:43 +0100 Subject: [PATCH] Add tests for new method --- .../usi/si/seart/treesitter/LanguageTest.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/test/java/ch/usi/si/seart/treesitter/LanguageTest.java b/src/test/java/ch/usi/si/seart/treesitter/LanguageTest.java index a7c71ca0..8948f5d1 100644 --- a/src/test/java/ch/usi/si/seart/treesitter/LanguageTest.java +++ b/src/test/java/ch/usi/si/seart/treesitter/LanguageTest.java @@ -1,6 +1,8 @@ package ch.usi.si.seart.treesitter; +import lombok.Cleanup; import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.api.io.TempDir; import org.junit.jupiter.params.ParameterizedTest; @@ -100,4 +102,21 @@ public Stream provideArguments(ExtensionContext extensionCo void testAssociatedWithThrows(Class throwableType, Path path) { Assertions.assertThrows(throwableType, () -> Language.associatedWith(path)); } + + @Test + void testNextState() { + Language language = Language.PYTHON; + @Cleanup Parser parser = Parser.getFor(language); + @Cleanup Tree tree = parser.parse("pass"); + Node root = tree.getRootNode(); + Assertions.assertEquals(0, language.nextState(root)); + } + + @Test + void testNextStateThrows() { + Assertions.assertThrows(NullPointerException.class, () -> Language.JAVA.nextState(null)); + Assertions.assertThrows(NullPointerException.class, () -> Language._INVALID_.nextState(null)); + Assertions.assertThrows(IllegalArgumentException.class, () -> Language.JAVA.nextState(empty)); + Assertions.assertThrows(IllegalArgumentException.class, () -> Language._INVALID_.nextState(empty)); + } }