package org.zwobble.hobgoblin.compiler.parser; import org.junit.jupiter.api.Test; import org.zwobble.hobgoblin.compiler.types.NamespaceName; import static org.zwobble.hobgoblin.compiler.parser.ParserTesting.parseString; import static org.zwobble.precisely.AssertThat.assertThat; import static org.zwobble.precisely.Matchers.equalTo; public class ParserNamespaceNameTests { @Test public void canParseTopLevelNamespace() { var source = "shapes"; var namespaceName = parseString( source, Parser::parseNamespaceName ); assertThat(namespaceName, equalTo(NamespaceName.of("shapes"))); } @Test public void namespacePartsAreSeparatedByForwardSlashes() { var source = "shapes/polygons/regular"; var namespaceName = parseString( source, Parser::parseNamespaceName ); assertThat(namespaceName, equalTo(NamespaceName.of("shapes", "polygons", "regular"))); } }