Parcourir la source

Fixed critiacal testing bug

We called 'new(Environment)' instead of 'create_empty_environment()'
master
FelixBrendel il y a 7 ans
Parent
révision
8c0a0b0781
4 fichiers modifiés avec 20 ajouts et 8 suppressions
  1. +4
    -0
      .gitignore
  2. +7
    -0
      build.bat
  3. +1
    -0
      main.c
  4. +8
    -8
      testing.c

+ 4
- 0
.gitignore Voir le fichier

@@ -1 +1,5 @@
/lisp
/*.exe
/*.ilk
/*.pdb
/.vs/

+ 7
- 0
build.bat Voir le fichier

@@ -0,0 +1,7 @@
@echo off
clang main.c -g -o lisp.exe --std=c99 || exit /b 1

echo.
echo --- Output Start ---
lisp test.lsp
echo --- Output End ---

+ 1
- 0
main.c Voir le fichier

@@ -1,3 +1,4 @@
#define _CRT_SECURE_NO_DEPRECATE
#include <stdio.h>
#include <string.h>
#include <stdlib.h>


+ 8
- 8
testing.c Voir le fichier

@@ -88,7 +88,7 @@ testresult test_built_in_add() {
four,
nil)));

Ast_Node* result = eval_expr(form, new(Environment));
Ast_Node* result = eval_expr(form, create_empty_environment());

assert_no_error(error);
assert_not_null(result);
@@ -111,7 +111,7 @@ testresult test_built_in_substract() {
four,
nil)));

Ast_Node* result = eval_expr(form, new(Environment));
Ast_Node* result = eval_expr(form, create_empty_environment());

assert_no_error(error);
assert_not_null(result);
@@ -135,7 +135,7 @@ testresult test_built_in_multiply() {
four,
nil)));

Ast_Node* result = eval_expr(form, new(Environment));
Ast_Node* result = eval_expr(form, create_empty_environment());

assert_no_error(error);
assert_not_null(result);
@@ -159,7 +159,7 @@ testresult test_built_in_divide() {
four,
nil)));

Ast_Node* result = eval_expr(form, new(Environment));
Ast_Node* result = eval_expr(form, create_empty_environment());

assert_null(error);
assert_not_null(result);
@@ -188,7 +188,7 @@ testresult test_built_in_if() {
Ast_Node* result;

// test *then* case
result = eval_expr(form, new(Environment));
result = eval_expr(form, create_empty_environment());

assert_no_error(error);
assert_not_null(result);
@@ -197,7 +197,7 @@ testresult test_built_in_if() {

// test *else* case
cond->value.number->value = 0;
result = eval_expr(form, new(Environment));
result = eval_expr(form, create_empty_environment());

assert_null(error);
assert_not_null(result);
@@ -225,7 +225,7 @@ testresult test_built_in_and() {
Ast_Node* result;

// a true case
result = eval_expr(form, new(Environment));
result = eval_expr(form, create_empty_environment());

assert_no_error(error);
assert_not_null(result);
@@ -234,7 +234,7 @@ testresult test_built_in_and() {

// a false case
cond1->value.number->value = 0;
result = eval_expr(form, new(Environment));
result = eval_expr(form, create_empty_environment());

assert_no_error(error);
assert_not_null(result);


Chargement…
Annuler
Enregistrer