From 5f4e46120bd5197facb78361bd7aef2d6a87b6c3 Mon Sep 17 00:00:00 2001 From: "Tristan B. Kildaire" Date: Wed, 3 Mar 2021 17:12:06 +0200 Subject: [PATCH] Moved symbol recognition unittests from parser.d to symbols.d --- source/tlang/compiler/parser.d | 21 +-------------------- source/tlang/compiler/symbols.d | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 20 deletions(-) diff --git a/source/tlang/compiler/parser.d b/source/tlang/compiler/parser.d index 19544ff..768b073 100644 --- a/source/tlang/compiler/parser.d +++ b/source/tlang/compiler/parser.d @@ -240,26 +240,7 @@ public final class Parser } } -/* Test: Character literal */ unittest { - SymbolType symbol = getSymbolType(new Token("'c'", 0, 0)); - assert(symbol == SymbolType.CHARACTER_LITERAL); -} - -/* Test: String literals */ -unittest -{ - SymbolType symbol = getSymbolType(new Token("\"hello\"", 0, 0)); - assert(symbol == SymbolType.STRING_LITERAL); -} - -/* Test: Number literals */ -unittest -{ - SymbolType symbol = getSymbolType(new Token("2121", 0, 0)); - assert(symbol == SymbolType.NUMBER_LITERAL); - - symbol = getSymbolType(new Token("2121a", 0, 0)); - assert(symbol != SymbolType.NUMBER_LITERAL); + /* TODO: Add some unit tests */ } diff --git a/source/tlang/compiler/symbols.d b/source/tlang/compiler/symbols.d index a171773..213c466 100644 --- a/source/tlang/compiler/symbols.d +++ b/source/tlang/compiler/symbols.d @@ -144,3 +144,27 @@ public static SymbolType getSymbolType(Token tokenIn) return SymbolType.UNKNOWN; } + +/* Test: Character literal */ +unittest +{ + SymbolType symbol = getSymbolType(new Token("'c'", 0, 0)); + assert(symbol == SymbolType.CHARACTER_LITERAL); +} + +/* Test: String literals */ +unittest +{ + SymbolType symbol = getSymbolType(new Token("\"hello\"", 0, 0)); + assert(symbol == SymbolType.STRING_LITERAL); +} + +/* Test: Number literals */ +unittest +{ + SymbolType symbol = getSymbolType(new Token("2121", 0, 0)); + assert(symbol == SymbolType.NUMBER_LITERAL); + + symbol = getSymbolType(new Token("2121a", 0, 0)); + assert(symbol != SymbolType.NUMBER_LITERAL); +} \ No newline at end of file