#include #include "unity/unity.h" #include "stack.h" void setUp(void){} void tearDown(void){} void TEST_CREATE_STACK(){ int value = 4; int* ptr = &value; StackNode* stack = push(NULL,ptr); TEST_ASSERT_NOT_NULL(stack); TEST_ASSERT_EQUAL_INT(value, *(int*)(stack->value)); } void TEST_STACK_POP() { int value1 = 4, value2 = 2; int* ptr = &value1; int* ptr2 = &value2; StackNode* stack = push(NULL,ptr); stack = push(stack,ptr2); stack = pop(stack); TEST_ASSERT_EQUAL_INT(value1, *(int*)(stack->value)); } void TEST_STACK_PUSH() { int value1 = 4, value2 = 2; int* ptr = &value1; int* ptr2 = &value2; StackNode* stack = push(NULL,ptr); stack = push(stack,ptr2); TEST_ASSERT_EQUAL_INT(value2, *(int*)(stack->value)); } int main(){ UNITY_BEGIN(); printf("\n============================\nstack tests\n============================\n"); RUN_TEST(TEST_CREATE_STACK); RUN_TEST(TEST_STACK_POP); RUN_TEST(TEST_STACK_PUSH); return UNITY_END(); } //Befehl zum Kompilieren: gcc stack.c stackTests.c unity/unity.c