diff options
Diffstat (limited to 'src/test')
3 files changed, 6 insertions, 26 deletions
diff --git a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerConstructedTypeTests.java b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerConstructedTypeTests.java index 1f3e5ff..ef55465 100644 --- a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerConstructedTypeTests.java +++ b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerConstructedTypeTests.java @@ -18,13 +18,11 @@ public class TypeCheckerConstructedTypeTests { List.of(UntypedArb.typeLevelReference("Int32")) ); var context = TypeCheckerContextArb.namespaceContext(); - context.declare("List"); var listType = SimpleNativeType.builtin("List"); var listTypeConstructor = new TypeConstructor<>(List.of(new TypeParam("T")), listType); - context.define("List", new TypeLevelValueType(listTypeConstructor)); - context.declare("Int32"); + context.declare("List", new TypeLevelValueType(listTypeConstructor)); var int32Type = SimpleNativeType.builtin("Int32"); - context.define("Int32", new TypeLevelValueType(int32Type)); + context.declare("Int32", new TypeLevelValueType(int32Type)); var typed = TypeChecker.typeCheckTypeLevelExpression(untyped, context); diff --git a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerSumDefinitionTests.java b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerSumDefinitionTests.java index c93868b..60c2b9a 100644 --- a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerSumDefinitionTests.java +++ b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerSumDefinitionTests.java @@ -48,10 +48,8 @@ public class TypeCheckerSumDefinitionTests { var globalContext = TypeCheckerGlobalContext.initial(); var namespaceContext = globalContext .enterNamespace(NamespaceName.of("a", "b")); - namespaceContext.declare(rectangleType.name()); - namespaceContext.define(rectangleType.name(), new TypeLevelValueType(rectangleType)); - namespaceContext.declare(triangleType.name()); - namespaceContext.define(triangleType.name(), new TypeLevelValueType(triangleType)); + namespaceContext.declare(rectangleType.name(), new TypeLevelValueType(rectangleType)); + namespaceContext.declare(triangleType.name(), new TypeLevelValueType(triangleType)); var typed = typeCheckNamespaceStatement(untyped, namespaceContext); diff --git a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerTypeLevelReferenceTests.java b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerTypeLevelReferenceTests.java index ef90d3e..e633c94 100644 --- a/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerTypeLevelReferenceTests.java +++ b/src/test/java/org/zwobble/hobgoblin/compiler/typechecker/TypeCheckerTypeLevelReferenceTests.java @@ -26,26 +26,11 @@ public class TypeCheckerTypeLevelReferenceTests { } @Test - public void whenNameIsUndefinedThenErrorIsThrown() { - var untyped = UntypedArb.typeLevelReference("X"); - var context = TypeCheckerContextArb.namespaceContext(); - context.declare("X"); - - var error = assertThrows( - UndefinedVariableError.class, - () -> TypeChecker.typeCheckTypeLevelExpression(untyped, context) - ); - - assertThat(error.variableName(), equalTo("X")); - } - - @Test public void whenVariableIsNotTypeLevelValueThenErrorIsThrown() { var untyped = UntypedArb.typeLevelReference("X"); var context = TypeCheckerContextArb.namespaceContext(); - context.declare("X"); var nativeType = SimpleNativeType.builtin("Int"); - context.define("X", nativeType); + context.declare("X", nativeType); var error = assertThrows( UnexpectedTypeError.class, @@ -60,9 +45,8 @@ public class TypeCheckerTypeLevelReferenceTests { public void whenNameIsMetaTypeThenValueIsType() { var untyped = UntypedArb.typeLevelReference("X"); var context = TypeCheckerContextArb.namespaceContext(); - context.declare("X"); var nativeType = SimpleNativeType.builtin("Int"); - context.define("X", new TypeLevelValueType(nativeType)); + context.declare("X", new TypeLevelValueType(nativeType)); var typed = TypeChecker.typeCheckTypeLevelExpression(untyped, context); |
