mirror of
https://github.com/usatiuk/psil.git
synced 2025-10-29 03:07:49 +01:00
Fix log tags, change EXPECT_ to ASSERT_ in tests
This commit is contained in:
@@ -39,7 +39,7 @@ TEST(CompilerTest, BasicHello) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "3\n");
|
||||
ASSERT_EQ(ssout.str(), "3\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, BasicLet) {
|
||||
@@ -54,7 +54,7 @@ TEST(CompilerTest, BasicLet) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "1\n");
|
||||
ASSERT_EQ(ssout.str(), "1\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, BasicFn) {
|
||||
@@ -69,7 +69,7 @@ TEST(CompilerTest, BasicFn) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "5\n");
|
||||
ASSERT_EQ(ssout.str(), "5\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, BasicFn2) {
|
||||
@@ -84,7 +84,7 @@ TEST(CompilerTest, BasicFn2) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "-1\n");
|
||||
ASSERT_EQ(ssout.str(), "-1\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, MultiLet) {
|
||||
@@ -95,7 +95,7 @@ TEST(CompilerTest, MultiLet) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC (let ((plfn (lambda (a b) (- a b))) (plfn2 (lambda (a b) (- b a)))) (plfn 2 3)) EVAL "
|
||||
"PRINT STOP)");
|
||||
"PRINT STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
@@ -104,12 +104,12 @@ TEST(CompilerTest, MultiLet) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC (let ((plfn (lambda (a b) (- a b))) (plfn2 (lambda (a b) (- b a)))) (plfn2 2 3)) EVAL "
|
||||
"PRINT STOP)");
|
||||
"PRINT STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "-1\n1\n");
|
||||
ASSERT_EQ(ssout.str(), "-1\n1\n");
|
||||
}
|
||||
|
||||
|
||||
@@ -125,8 +125,9 @@ TEST(CompilerTest, BasicFnIfT) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "1\n");
|
||||
ASSERT_EQ(ssout.str(), "1\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, BasicFnIfF) {
|
||||
std::stringstream ssin;
|
||||
std::stringstream ssout;
|
||||
@@ -139,8 +140,9 @@ TEST(CompilerTest, BasicFnIfF) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "2\n");
|
||||
ASSERT_EQ(ssout.str(), "2\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, RecursiveFn) {
|
||||
std::stringstream ssin;
|
||||
std::stringstream ssout;
|
||||
@@ -149,12 +151,12 @@ TEST(CompilerTest, RecursiveFn) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC (letrec ((fib (lambda (n) (if n (if (+ n -1) (+ (fib (+ n -1)) (fib(+ n -2))) 1) 0) ))) "
|
||||
"(fib 10)) EVAL PRINT STOP)");
|
||||
"(fib 10)) EVAL PRINT STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "55\n");
|
||||
ASSERT_EQ(ssout.str(), "55\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, GlobalDefine) {
|
||||
@@ -169,7 +171,7 @@ TEST(CompilerTest, GlobalDefine) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "1\n");
|
||||
ASSERT_EQ(ssout.str(), "1\n");
|
||||
}
|
||||
|
||||
|
||||
@@ -185,7 +187,7 @@ TEST(CompilerTest, GlobalDefineFn) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "5\n");
|
||||
ASSERT_EQ(ssout.str(), "5\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, GlobalDefineFnQuote) {
|
||||
@@ -200,7 +202,7 @@ TEST(CompilerTest, GlobalDefineFnQuote) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "(1 2)\n");
|
||||
ASSERT_EQ(ssout.str(), "(1 2)\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, GlobalDefineFnCar) {
|
||||
@@ -211,12 +213,12 @@ TEST(CompilerTest, GlobalDefineFnCar) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC (define (carr l) (car l)) EVAL LDC (carr (quote (1 2))) EVAL PRINT LDC (carr (cdr (quote "
|
||||
"(1 2)))) EVAL PRINT STOP)");
|
||||
"(1 2)))) EVAL PRINT STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "1\n2\n");
|
||||
ASSERT_EQ(ssout.str(), "1\n2\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, GlobalDefineFnEq) {
|
||||
@@ -227,7 +229,7 @@ TEST(CompilerTest, GlobalDefineFnEq) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC (define (eqtest l) (= l ())) EVAL LDC (eqtest (quote ())) EVAL PRINT LDC (eqtest (nil)) "
|
||||
"EVAL PRINT STOP)");
|
||||
"EVAL PRINT STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
@@ -236,12 +238,12 @@ TEST(CompilerTest, GlobalDefineFnEq) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC (define (eqtest l) (= l (nil))) EVAL LDC (eqtest (quote ())) EVAL PRINT LDC (eqtest "
|
||||
"(nil)) EVAL PRINT STOP)");
|
||||
"(nil)) EVAL PRINT STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "1\n1\n1\n1\n");
|
||||
ASSERT_EQ(ssout.str(), "1\n1\n1\n1\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, GlobalDefineFnMulti) {
|
||||
@@ -252,12 +254,12 @@ TEST(CompilerTest, GlobalDefineFnMulti) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC (define (one x y) (+ x y)) EVAL LDC (define (two x y) (one (+ x 1) y)) EVAL LDC (two 2 3) "
|
||||
"EVAL PRINT STOP)");
|
||||
"EVAL PRINT STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "6\n");
|
||||
ASSERT_EQ(ssout.str(), "6\n");
|
||||
}
|
||||
|
||||
TEST(CompilerTest, GlobalDefineFnMultiTwo) {
|
||||
@@ -268,12 +270,12 @@ TEST(CompilerTest, GlobalDefineFnMultiTwo) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC (define (one x y) (- x y)) EVAL LDC (define (two x y) (one (+ x 1) y)) EVAL LDC (two 2 3) "
|
||||
"EVAL PRINT STOP)");
|
||||
"EVAL PRINT STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "0\n");
|
||||
ASSERT_EQ(ssout.str(), "0\n");
|
||||
}
|
||||
|
||||
|
||||
@@ -286,12 +288,12 @@ TEST(CompilerTest, GlobalDefineFnRec) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC (define (fib n) (if n (if (+ n -1) (+ (fib (+ n -1)) (fib(+ n -2))) 1) 0) ) EVAL LDC (fib "
|
||||
"20) EVAL PRINT STOP)");
|
||||
"20) EVAL PRINT STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
Options::set<bool>("command_strs", true);
|
||||
Logger::set_level(Logger::VM, Logger::DEBUG);
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "6765\n");
|
||||
ASSERT_EQ(ssout.str(), "6765\n");
|
||||
}
|
||||
@@ -5,6 +5,7 @@
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "MemoryContext.h"
|
||||
|
||||
class Environment : public ::testing::Environment {
|
||||
public:
|
||||
~Environment() override {}
|
||||
@@ -30,26 +31,26 @@ TEST(GCTest, GCTest) {
|
||||
c.append(Handle::makeNumCell(1));
|
||||
c.append(Handle::makeNumCell(2));
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
EXPECT_EQ(c.car().val(), 1);
|
||||
EXPECT_EQ(c.cdr().car().val(), 2);
|
||||
ASSERT_EQ(c.car().val(), 1);
|
||||
ASSERT_EQ(c.cdr().car().val(), 2);
|
||||
}
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
EXPECT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
ASSERT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
{
|
||||
Handle c = Handle::cons(nullptr, nullptr);
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
c.push(Handle::makeNumCell(1));
|
||||
c.push(Handle::makeNumCell(2));
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
EXPECT_EQ(c.car().val(), 2);
|
||||
EXPECT_EQ(c.cdr().car().val(), 1);
|
||||
ASSERT_EQ(c.car().val(), 2);
|
||||
ASSERT_EQ(c.cdr().car().val(), 1);
|
||||
}
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
EXPECT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
ASSERT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
}
|
||||
|
||||
TEST(GCTest, GCTestAppend) {
|
||||
@@ -59,13 +60,14 @@ TEST(GCTest, GCTestAppend) {
|
||||
MemoryContext::get().request_gc();
|
||||
c.append(Handle::makeNumCell(1));
|
||||
MemoryContext::get().request_gc();
|
||||
EXPECT_EQ(c.car().val(), 1);
|
||||
ASSERT_EQ(c.car().val(), 1);
|
||||
}
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
EXPECT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
ASSERT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
}
|
||||
|
||||
TEST(GCTest, GCTestPop) {
|
||||
|
||||
{
|
||||
@@ -77,13 +79,13 @@ TEST(GCTest, GCTestPop) {
|
||||
}
|
||||
for (int i = test_size - 1; i >= 0; i--) {
|
||||
MemoryContext::get().request_gc();
|
||||
EXPECT_EQ(i, c.pop().val());
|
||||
ASSERT_EQ(i, c.pop().val());
|
||||
}
|
||||
}
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
EXPECT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
ASSERT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
}
|
||||
|
||||
TEST(GCTest, GCTestAppend2) {
|
||||
@@ -96,12 +98,12 @@ TEST(GCTest, GCTestAppend2) {
|
||||
}
|
||||
for (int i = 0; i < test_size; i++) {
|
||||
MemoryContext::get().request_gc();
|
||||
EXPECT_EQ(i, c.pop().val());
|
||||
ASSERT_EQ(i, c.pop().val());
|
||||
}
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
EXPECT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
ASSERT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
}
|
||||
|
||||
TEST(GCTest, GCTestAppend3) {
|
||||
@@ -114,11 +116,11 @@ TEST(GCTest, GCTestAppend3) {
|
||||
MemoryContext::get().request_gc();
|
||||
Handle n = c.cdr();
|
||||
c.setcdr(nullptr);
|
||||
EXPECT_EQ(n.car().val(), 2);
|
||||
EXPECT_EQ(c.car().val(), 1);
|
||||
ASSERT_EQ(n.car().val(), 2);
|
||||
ASSERT_EQ(c.car().val(), 1);
|
||||
}
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
EXPECT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
ASSERT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
#include "Command.h"
|
||||
#include "VM.h"
|
||||
|
||||
class Environment : public ::testing::Environment {
|
||||
public:
|
||||
~Environment() override {}
|
||||
@@ -36,7 +37,7 @@ TEST(VMTest, BasicHello) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "h");
|
||||
ASSERT_EQ(ssout.str(), "h");
|
||||
}
|
||||
|
||||
//TODO: maybe rewrite it all...
|
||||
@@ -84,7 +85,7 @@ TEST(VMTest, BasicHello) {
|
||||
// vm.run();
|
||||
// }
|
||||
// ssout.flush();
|
||||
// EXPECT_EQ(ssout.str(), "14");
|
||||
// ASSERT_EQ(ssout.str(), "14");
|
||||
//}
|
||||
//
|
||||
//TEST(VMTest, SimpleFunction) {
|
||||
@@ -112,7 +113,7 @@ TEST(VMTest, BasicHello) {
|
||||
// vm.run();
|
||||
// }
|
||||
// ssout.flush();
|
||||
// EXPECT_EQ(ssout.str(), "3");
|
||||
// ASSERT_EQ(ssout.str(), "3");
|
||||
//}
|
||||
//
|
||||
//TEST(VMTest, RecursiveFunction) {
|
||||
@@ -257,5 +258,5 @@ TEST(VMTest, BasicHello) {
|
||||
//vm.run();
|
||||
//}
|
||||
//ssout.flush();
|
||||
//EXPECT_EQ(ssout.str(), "2358 55");
|
||||
//ASSERT_EQ(ssout.str(), "2358 55");
|
||||
//}
|
||||
@@ -33,7 +33,7 @@ TEST(VMWithParserTest, BasicHello) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "h");
|
||||
ASSERT_EQ(ssout.str(), "h");
|
||||
}
|
||||
|
||||
TEST(VMWithParserTest, BasicBranch) {
|
||||
@@ -44,12 +44,12 @@ TEST(VMWithParserTest, BasicBranch) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("(LDC 1 SEL (LDC 10 PUTNUM JOIN) (LDC 20 PUTNUM JOIN) LDC 0 SEL (LDC 30 PUTNUM JOIN) (LDC 40 "
|
||||
"PUTNUM JOIN) STOP)");
|
||||
"PUTNUM JOIN) STOP)");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "1040");
|
||||
ASSERT_EQ(ssout.str(), "1040");
|
||||
}
|
||||
|
||||
TEST(VMWithParserTest, BasicFunction) {
|
||||
@@ -64,7 +64,7 @@ TEST(VMWithParserTest, BasicFunction) {
|
||||
vm.run();
|
||||
}
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "3");
|
||||
ASSERT_EQ(ssout.str(), "3");
|
||||
}
|
||||
|
||||
TEST(VMWithParserTest, RecFunction) {
|
||||
@@ -75,17 +75,17 @@ TEST(VMWithParserTest, RecFunction) {
|
||||
VM vm(ssin, ssout);
|
||||
Parser parser;
|
||||
parser.loadStr("( DUM NIL LDF ( LD ( 1 . 1 ) SEL ( LD ( 1 . 1 ) LDC -1 ADD SEL ( NIL LD ( 1 . 1 ) LDC -1 ADD "
|
||||
"CONS LD ( 2 . 1 ) AP "
|
||||
"NIL LD ( 1 . 1 ) LDC -2 ADD CONS LD ( 2 . 1 ) AP ADD JOIN ) ( LDC 1 JOIN ) JOIN ) ( LDC 0 JOIN "
|
||||
") RET ) CONS LDF ( "
|
||||
"NIL LDC 20 CONS LD ( 1 . 1 ) AP RET ) RAP PUTNUM STOP )");
|
||||
"CONS LD ( 2 . 1 ) AP "
|
||||
"NIL LD ( 1 . 1 ) LDC -2 ADD CONS LD ( 2 . 1 ) AP ADD JOIN ) ( LDC 1 JOIN ) JOIN ) ( LDC 0 JOIN "
|
||||
") RET ) CONS LDF ( "
|
||||
"NIL LDC 20 CONS LD ( 1 . 1 ) AP RET ) RAP PUTNUM STOP )");
|
||||
vm.loadControl(parser.parseExpr());
|
||||
vm.run();
|
||||
}
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
MemoryContext::get().request_gc_and_wait();
|
||||
EXPECT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
ASSERT_EQ(MemoryContext::get().cell_count(), 0);
|
||||
ssout.flush();
|
||||
EXPECT_EQ(ssout.str(), "6765");
|
||||
ASSERT_EQ(ssout.str(), "6765");
|
||||
}
|
||||
Reference in New Issue
Block a user