testing block assert

This commit is contained in:
lyon 2021-09-04 12:36:02 +08:00
parent 780341b91c
commit 726009aa53
4 changed files with 35 additions and 1 deletions

View File

@ -10,7 +10,7 @@
"request": "launch",
"program": "${workspaceFolder}/../build/src/test/pikascript_test",
"args": [
"--gtest_filter=strs.formatInt"
// "--gtest_filter=strs.formatInt"
],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",

View File

@ -6,6 +6,7 @@
#include <stdarg.h>
#include "PikaBlock.h"
#include "TinyObj.h"
#include "PikaInvoke.h"
void block_deinit(PikaObj *self)
{
@ -22,6 +23,26 @@ PikaObj *block_init()
return self;
}
uint8_t block_checkAssert(PikaObj *self)
{
Args *buffs = New_strBuff();
char *assert = block_getAssert(self);
obj_invoke(self, strsFormat(buffs, 32, "_res = %s", assert));
int res = obj_getInt(self, "_res");
args_deinit(buffs);
return res;
}
void block_setAssert(PikaObj *self, char *assert)
{
obj_setStr(self, "assert", assert);
}
char *block_getAssert(PikaObj *self)
{
return obj_getStr(self, "assert");
}
void block_setMode(PikaObj *self, char *mode)
{
obj_setStr(self, "mode", mode);

View File

@ -6,4 +6,7 @@ void block_deinit(PikaObj *self);
PikaObj *block_init();
char *block_popLine(PikaObj *self);
void block_pushLine(PikaObj *self, char *line);
char *block_getAssert(PikaObj *self);
void block_setAssert(PikaObj *self, char *assert);
uint8_t block_checkAssert(PikaObj *self);
#endif

View File

@ -35,4 +35,14 @@ TEST(block, pop)
block_deinit(block);
EXPECT_EQ(pikaMemNow(), 0);
}
TEST(block, assert1)
{
PikaObj *block = block_init();
block_setAssert(block, (char *)"1");
int res = block_checkAssert(block);
ASSERT_EQ(1, res);
block_deinit(block);
}
void block_pushLine(PikaObj *self, char *line);