mirror of
https://gitee.com/apaki/unicstl.git
synced 2025-05-17 11:31:37 +08:00
unity多文件单元测试的编写思考,可能无法做大打印的信息直接定位到特定文件。只显示BEGIN的文件。
This commit is contained in:
parent
c6ec1b1574
commit
81c7854033
@ -205,7 +205,7 @@ static void demo_stack_struct(void)
|
||||
}
|
||||
|
||||
stack->destory(stack);
|
||||
stack_free(stack);
|
||||
stack_free(&stack);
|
||||
}
|
||||
|
||||
void demo_stack(void)
|
||||
|
@ -51,6 +51,6 @@ bool stack_init(struct _stack* self, uint32_t obj_size);
|
||||
bool stack_init2(struct _stack* self, uint32_t obj_size, uint32_t capacity);
|
||||
|
||||
stack_t stack_new(void);
|
||||
void stack_free(stack_t stack);
|
||||
void stack_free(stack_t* stack);
|
||||
|
||||
#endif // _STACK_H_
|
||||
|
2
mk.bat
2
mk.bat
@ -7,4 +7,4 @@ cmake -B build -G "MinGW Makefiles"
|
||||
make -C build
|
||||
make -C build install
|
||||
|
||||
start /b ./build/release/bin/test.exe
|
||||
"./build/release/bin/test.exe"
|
||||
|
@ -327,11 +327,12 @@ stack_t stack_new(void)
|
||||
return (struct _stack*)malloc(sizeof(struct _stack));
|
||||
}
|
||||
|
||||
void stack_free(stack_t stack)
|
||||
void stack_free(stack_t *stack)
|
||||
{
|
||||
if(stack)
|
||||
if(*stack)
|
||||
{
|
||||
stack->destory(stack);
|
||||
free(stack);
|
||||
(*stack)->destory(*stack);
|
||||
free(*stack);
|
||||
}
|
||||
*stack = NULL;
|
||||
}
|
||||
|
@ -699,7 +699,7 @@ void tree_preorder(struct _tree* self, struct _tree_node* root)
|
||||
}
|
||||
}
|
||||
}
|
||||
stack_free(stack);
|
||||
stack_free(&stack);
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -784,7 +784,7 @@ void tree_inorder(struct _tree* self, struct _tree_node* root)
|
||||
}
|
||||
}
|
||||
}
|
||||
stack_free(stack);
|
||||
stack_free(&stack);
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -879,8 +879,8 @@ void tree_postorder(struct _tree* self, struct _tree_node* root)
|
||||
self->print_obj(node->obj);
|
||||
}
|
||||
|
||||
stack_free(stack);
|
||||
stack_free(stack2);
|
||||
stack_free(&stack);
|
||||
stack_free(&stack2);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -70,8 +70,11 @@ void tearDown(void)
|
||||
|
||||
int main(int argc, char const *argv[])
|
||||
{
|
||||
printf("\n---------- 데禱꿎桿 ----------\n");
|
||||
printf("----- 데禱꿎桿 -----\n");
|
||||
UNITY_BEGIN();
|
||||
RUN_TEST(test_stack);
|
||||
return UNITY_END();
|
||||
|
||||
test_stack();
|
||||
|
||||
UNITY_END();
|
||||
return 0;
|
||||
}
|
||||
|
@ -17,34 +17,40 @@ static void test_stack_num(void)
|
||||
int temp = 0;
|
||||
uint32_t len = sizeof(data) / sizeof(data[0]);
|
||||
|
||||
struct _stack s;
|
||||
TEST_ASSERT_TRUE(stack_init(&s, sizeof(int)));
|
||||
s.print_obj = print_num;
|
||||
stack_t stack = NULL;
|
||||
stack = stack_new();
|
||||
TEST_ASSERT_TRUE(stack_init(stack, sizeof(int)));
|
||||
stack->print_obj = print_num;
|
||||
|
||||
TEST_ASSERT_FALSE(s.peek(&s, &temp));
|
||||
TEST_ASSERT_FALSE(stack->peek(stack, &temp));
|
||||
|
||||
for (i = 0; i < len; i++)
|
||||
{
|
||||
s.push(&s, &data[i]);
|
||||
s.peek(&s, &temp);
|
||||
stack->push(stack, &data[i]);
|
||||
stack->peek(stack, &temp);
|
||||
}
|
||||
|
||||
for (i = 0; i < len + 1; i++)
|
||||
{
|
||||
if (true == s.pop(&s, &temp))
|
||||
if (true == stack->pop(stack, &temp))
|
||||
{
|
||||
if(false != s.peek(&s, &temp))
|
||||
if(false != stack->peek(stack, &temp))
|
||||
{
|
||||
TEST_ASSERT_EQUAL(data[len - 2 - i], temp);
|
||||
}
|
||||
}
|
||||
}
|
||||
TEST_ASSERT_TRUE(s.empty(&s));
|
||||
TEST_ASSERT_TRUE(stack->empty(stack));
|
||||
|
||||
s.destory(&s);
|
||||
stack_free(&stack);
|
||||
TEST_ASSERT_NULL(stack);
|
||||
}
|
||||
|
||||
void test_stack(void)
|
||||
{
|
||||
// UNITY_BEGIN();
|
||||
|
||||
RUN_TEST(test_stack_num);
|
||||
|
||||
// UNITY_END();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user