/
dskremko
/
scheme_interpreter
Обзор
Документация
Войти
/
dskremko
/
scheme_interpreter
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test/test_control_flow.cpp
23 строки
580 B
Kremko Denis
Commitment
17 ноя 2021, 18:38
17 ноя 2021, 18:38
ed189e7
Код
Авторство
О чём код?
#include <test/scheme_test.h> TEST_CASE_METHOD(SchemeTest, "IfReturnValue") { ExpectEq("(if #t 0)", "0"); ExpectEq("(if #f 0)", "()"); ExpectEq("(if (= 2 2) (+ 1 10))", "11"); ExpectEq("(if (= 2 3) (+ 1 10) 5)", "5"); } TEST_CASE_METHOD(SchemeTest, "IfEvaluation") { ExpectNoError("(define x 1)"); ExpectNoError("(if #f (set! x 2))"); ExpectEq("x", "1"); ExpectNoError("(if #t (set! x 4) (set! x 3))"); ExpectEq("x", "4"); } TEST_CASE_METHOD(SchemeTest, "IfSyntax") { ExpectSyntaxError("(if)"); ExpectSyntaxError("(if 1 2 3 4)"); }