Added Hello World program test

This commit is contained in:
Kyler Olsen 2025-11-01 15:19:20 -06:00
parent 03ca3411d0
commit 66a50da66c
1 changed files with 13 additions and 1 deletions

View File

@ -12,7 +12,7 @@
#include "sls/lexer.h" #include "sls/lexer.h"
#include "tests/tests.h" #include "tests/tests.h"
static const size_t NUM_OF_TESTS = 11; static const size_t NUM_OF_TESTS = 12;
static const double FLOAT_TEST_PRECISION = 0.01; static const double FLOAT_TEST_PRECISION = 0.01;
@ -572,6 +572,17 @@ static Boolean test_type_tuple_value(LexerTest *test, LexerResult result, size_t
// Test cases // Test cases
static TestResult test_hello_world_statement() {
LexerTest test = start_up_test("test_hello_world_statement", "\"Hello, World!\" print");
LexerResult result = lexical_analysis(&test.lexer_info);
if (result.type == SLS_ERROR) return error_fail_test(&test, result, result.error);
size_t i = 0;
if (test_string_value(&test, result, i++, 13, "Hello, World!")) return test.result;
if (test_identifier_value(&test, result, i++, FALSE, 5, "print")) return test.result;
if (test_eof_value(&test, result, i++)) return test.result;
return pass_test(&test, result);
}
static TestResult test_add_statement() { static TestResult test_add_statement() {
LexerTest test = start_up_test("test_add_statement", "3 4 +"); LexerTest test = start_up_test("test_add_statement", "3 4 +");
LexerResult result = lexical_analysis(&test.lexer_info); LexerResult result = lexical_analysis(&test.lexer_info);
@ -717,6 +728,7 @@ TestsReport run_lexer_tests() {
size_t i = 0; size_t i = 0;
test_report.tests[i++] = test_hello_world_statement();
test_report.tests[i++] = test_add_statement(); test_report.tests[i++] = test_add_statement();
test_report.tests[i++] = test_sub_statement(); test_report.tests[i++] = test_sub_statement();
test_report.tests[i++] = test_mult_statement(); test_report.tests[i++] = test_mult_statement();