stacktest überarbeitet
This commit is contained in:
parent
13cb5d8c86
commit
09d7f457dd
@ -1,10 +1,10 @@
|
||||
Kristin;9944
|
||||
Kristin;7947
|
||||
Kristin;6962
|
||||
Kristin;5987
|
||||
Kristin;5975
|
||||
krisp;4986
|
||||
krisp;4985
|
||||
Kristin;4972
|
||||
player1;3999
|
||||
Kristin;3992
|
||||
krisp;3991
|
||||
|
||||
15
test_stack.c
15
test_stack.c
@ -38,8 +38,7 @@ void test_pushDataToStack(void) {
|
||||
TEST_ASSERT_NULL(testStack->prev);
|
||||
|
||||
// zweiter Push
|
||||
StackNode *oldHead = testStack;
|
||||
|
||||
StackNode *oldHead = testStack; // bisherigen head speichern
|
||||
testStack = push(testStack, &testInts[1]);
|
||||
|
||||
TEST_ASSERT_NOT_NULL(testStack);
|
||||
@ -51,12 +50,15 @@ void test_pushDataToStack(void) {
|
||||
oldHead->data); // data pointer wurden richtig gesetzt
|
||||
TEST_ASSERT_EQUAL_PTR(&testInts[1], testStack->data);
|
||||
|
||||
// richtige Verkettung: NULL <- testStack -> testStack->next -> oldHead ->
|
||||
// NULL
|
||||
TEST_ASSERT_EQUAL_PTR(oldHead, testStack->next);
|
||||
TEST_ASSERT_EQUAL_PTR(testStack, oldHead->prev);
|
||||
TEST_ASSERT_NULL(testStack->prev);
|
||||
|
||||
// Speicherfreigabe
|
||||
testStack->next = NULL;
|
||||
testStack->next = NULL; // pointer ungültig machen, damit nicht ausversehen
|
||||
// später aufgerufen
|
||||
oldHead->prev = NULL;
|
||||
|
||||
free(oldHead);
|
||||
@ -68,7 +70,8 @@ void test_deleteTopElement(void) {
|
||||
int testInts[] = {10, 20, 30};
|
||||
StackNode *stack = NULL;
|
||||
|
||||
for (int i = 0; i < 3; i++) {
|
||||
for (int i = 0; i < 3;
|
||||
i++) { // Stack mit drei Elementen, oberestes Element mit data 30
|
||||
stack = push(stack, &testInts[i]);
|
||||
}
|
||||
|
||||
@ -76,11 +79,13 @@ void test_deleteTopElement(void) {
|
||||
|
||||
stack = pop(stack);
|
||||
TEST_ASSERT_EQUAL_PTR(&testInts[1], stack->data);
|
||||
TEST_ASSERT_NULL(stack->prev);
|
||||
|
||||
stack = pop(stack);
|
||||
TEST_ASSERT_EQUAL_PTR(&testInts[0], stack->data);
|
||||
TEST_ASSERT_NULL(stack->prev);
|
||||
|
||||
stack = pop(stack);
|
||||
stack = pop(stack); // bei leerem Stack wird NULL zurückgegeben
|
||||
TEST_ASSERT_NULL(stack);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user