From c35bb6f9555a6de6a7a91bba2716f98bd7aeb2f0 Mon Sep 17 00:00:00 2001 From: Pascal Schneider Date: Tue, 6 Feb 2024 00:36:25 +0100 Subject: [PATCH] Unittests, C und H Datei --- build/test/cache/test_timequiz.c | 252 ++++++++++++++++++-- build/test/out/c/test_timequiz.o | Bin 4715 -> 10955 bytes build/test/out/c/test_timequiz_runner.o | Bin 7006 -> 10798 bytes build/test/out/c/timequiz.o | Bin 7877 -> 16553 bytes build/test/out/test_timequiz.out | Bin 112275 -> 127109 bytes build/test/preprocess/files/test_timequiz.c | 252 ++++++++++++++++++-- build/test/results/test_casualQuiz.pass | 2 +- build/test/results/test_quizduell.pass | 2 +- build/test/results/test_timequiz.pass | 50 +++- build/test/results/test_wwm.pass | 2 +- build/test/runners/test_timequiz_runner.c | 20 +- 11 files changed, 536 insertions(+), 44 deletions(-) diff --git a/build/test/cache/test_timequiz.c b/build/test/cache/test_timequiz.c index 8809219..591ce84 100644 --- a/build/test/cache/test_timequiz.c +++ b/build/test/cache/test_timequiz.c @@ -6,22 +6,14 @@ - - void setUp(void) { - - } - - void tearDown(void) { - - } @@ -32,17 +24,9 @@ void test_getRandomQuestionIndex(void) { int totalQuestions = 10; - - - - int index = getRandomQuestionIndex(askedQuestions, totalQuestions); - - - - - do {if ((index >= 0 && index < totalQuestions)) {} else {UnityFail( ((" Expected TRUE Was FALSE")), (UNITY_UINT)((UNITY_UINT)(24)));}} while(0); + do {if ((index >= 0 && index < totalQuestions)) {} else {UnityFail( ((" Expected TRUE Was FALSE")), (UNITY_UINT)((UNITY_UINT)(16)));}} while(0); } @@ -73,3 +57,237 @@ void test_displayQuestion(void) { displayQuestion(question, answers, correctIndex); } + + + +void test_processUserAnswer_correct(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 0; + + int userAnswer = 1; + + + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(41), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(42), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_wrong(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 0; + + int userAnswer = 2; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(52), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(53), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_correctAnswer_index3(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"A", "B", "C", "D"}; + + processUserAnswer(4, 3, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(61), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(62), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_correctAnswer_index0(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"A", "B", "C", "D"}; + + processUserAnswer(1, 0, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(70), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(71), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_wrongAnswer_index3(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 0; + + int userAnswer = 4; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(81), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(82), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_correctAnswer_index1(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 1; + + int userAnswer = 2; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(92), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(93), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_correctAnswer_index2(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 2; + + int userAnswer = 3; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(103), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(104), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_wrongAnswer_index1(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 2; + + int userAnswer = 2; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(114), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(115), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/out/c/test_timequiz.o b/build/test/out/c/test_timequiz.o index f8234ce7431876df661c6d80afeb5f2795e404e2..4ac1e7034f4d4ec8b6444f0283097314087ddfb1 100644 GIT binary patch literal 10955 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 V&T?Ei3>Pj`+7?d(VN+&(|1TFGqeB1y delta 2107 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 literal 7877 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 GrT!P_+IRf` diff --git a/build/test/out/test_timequiz.out b/build/test/out/test_timequiz.out index fa6fec4f34f9a9be3afe3803b0d85efcb8830c1e..0e45e3bf8c0e96e9475995d7d38987224ccaa2d3 100755 GIT binary patch literal 127109 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
    I- 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%0A&`~I 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 R1tV?9A*b9TW_W$a{{}!AlQjSU delta 36821 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 0 && index < totalQuestions)) {} else {UnityFail( ((" Expected TRUE Was FALSE")), (UNITY_UINT)((UNITY_UINT)(24)));}} while(0); + do {if ((index >= 0 && index < totalQuestions)) {} else {UnityFail( ((" Expected TRUE Was FALSE")), (UNITY_UINT)((UNITY_UINT)(16)));}} while(0); } @@ -73,3 +57,237 @@ void test_displayQuestion(void) { displayQuestion(question, answers, correctIndex); } + + + +void test_processUserAnswer_correct(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 0; + + int userAnswer = 1; + + + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(41), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(42), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_wrong(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 0; + + int userAnswer = 2; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(52), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(53), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_correctAnswer_index3(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"A", "B", "C", "D"}; + + processUserAnswer(4, 3, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(61), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(62), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_correctAnswer_index0(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"A", "B", "C", "D"}; + + processUserAnswer(1, 0, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(70), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(71), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_wrongAnswer_index3(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 0; + + int userAnswer = 4; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(81), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(82), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_correctAnswer_index1(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 1; + + int userAnswer = 2; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(92), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(93), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_correctAnswer_index2(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 2; + + int userAnswer = 3; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(103), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(104), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_processUserAnswer_wrongAnswer_index1(void) { + + int score = 0; + + int totalCorrectAnswers = 0; + + char* answers[] = {"Paris", "London", "Berlin", "Madrid"}; + + int correctIndex = 2; + + int userAnswer = 2; + + processUserAnswer(userAnswer, correctIndex, &score, &totalCorrectAnswers, answers); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((score)), ( + + ((void *)0) + + ), (UNITY_UINT)(114), UNITY_DISPLAY_STYLE_INT); + + UnityAssertEqualNumber((UNITY_INT)((0)), (UNITY_INT)((totalCorrectAnswers)), ( + + ((void *)0) + + ), (UNITY_UINT)(115), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/results/test_casualQuiz.pass b/build/test/results/test_casualQuiz.pass index d81470f..0054265 100644 --- a/build/test/results/test_casualQuiz.pass +++ b/build/test/results/test_casualQuiz.pass @@ -11,4 +11,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.01952290000008361 +:time: 0.015700600000855047 diff --git a/build/test/results/test_quizduell.pass b/build/test/results/test_quizduell.pass index 43b9769..c4843d1 100644 --- a/build/test/results/test_quizduell.pass +++ b/build/test/results/test_quizduell.pass @@ -11,4 +11,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.016257900000709924 +:time: 0.015422999998918385 diff --git a/build/test/results/test_timequiz.pass b/build/test/results/test_timequiz.pass index 90c0fdb..bbb710d 100644 --- a/build/test/results/test_timequiz.pass +++ b/build/test/results/test_timequiz.pass @@ -4,18 +4,50 @@ :file: test_timequiz.c :successes: - :test: test_getRandomQuestionIndex - :line: 16 + :line: 12 :message: '' :unity_test_time: 0 - :test: test_displayQuestion - :line: 27 + :line: 19 + :message: '' + :unity_test_time: 0 +- :test: test_processUserAnswer_correct + :line: 33 + :message: '' + :unity_test_time: 0 +- :test: test_processUserAnswer_wrong + :line: 45 + :message: '' + :unity_test_time: 0 +- :test: test_processUserAnswer_correctAnswer_index3 + :line: 56 + :message: '' + :unity_test_time: 0 +- :test: test_processUserAnswer_correctAnswer_index0 + :line: 65 + :message: '' + :unity_test_time: 0 +- :test: test_processUserAnswer_wrongAnswer_index3 + :line: 74 + :message: '' + :unity_test_time: 0 +- :test: test_processUserAnswer_correctAnswer_index1 + :line: 85 + :message: '' + :unity_test_time: 0 +- :test: test_processUserAnswer_correctAnswer_index2 + :line: 96 + :message: '' + :unity_test_time: 0 +- :test: test_processUserAnswer_wrongAnswer_index1 + :line: 107 :message: '' :unity_test_time: 0 :failures: [] :ignores: [] :counts: - :total: 2 - :passed: 2 + :total: 10 + :passed: 10 :failed: 0 :ignored: 0 :stdout: @@ -34,4 +66,12 @@ - 2. B - 3. C - 4. D -:time: 0.03188090000003285 +- Correct! +- 'Wrong! The correct answer is: 1. Paris' +- Correct! +- Correct! +- 'Wrong! The correct answer is: 1. Paris' +- Correct! +- Correct! +- 'Wrong! The correct answer is: 3. Berlin' +:time: 0.033077699999921606 diff --git a/build/test/results/test_wwm.pass b/build/test/results/test_wwm.pass index efd65ac..44efd99 100644 --- a/build/test/results/test_wwm.pass +++ b/build/test/results/test_wwm.pass @@ -11,4 +11,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.016452499999104475 +:time: 0.015287000000171247 diff --git a/build/test/runners/test_timequiz_runner.c b/build/test/runners/test_timequiz_runner.c index 0779822..4b1fdbd 100644 --- a/build/test/runners/test_timequiz_runner.c +++ b/build/test/runners/test_timequiz_runner.c @@ -12,6 +12,14 @@ extern void setUp(void); extern void tearDown(void); extern void test_getRandomQuestionIndex(void); extern void test_displayQuestion(void); +extern void test_processUserAnswer_correct(void); +extern void test_processUserAnswer_wrong(void); +extern void test_processUserAnswer_correctAnswer_index3(void); +extern void test_processUserAnswer_correctAnswer_index0(void); +extern void test_processUserAnswer_wrongAnswer_index3(void); +extern void test_processUserAnswer_correctAnswer_index1(void); +extern void test_processUserAnswer_correctAnswer_index2(void); +extern void test_processUserAnswer_wrongAnswer_index1(void); /*=======Mock Management=====*/ @@ -76,8 +84,16 @@ static void run_test(UnityTestFunction func, const char* name, UNITY_LINE_TYPE l int main(void) { UnityBegin("test_timequiz.c"); - run_test(test_getRandomQuestionIndex, "test_getRandomQuestionIndex", 16); - run_test(test_displayQuestion, "test_displayQuestion", 27); + run_test(test_getRandomQuestionIndex, "test_getRandomQuestionIndex", 12); + run_test(test_displayQuestion, "test_displayQuestion", 19); + run_test(test_processUserAnswer_correct, "test_processUserAnswer_correct", 33); + run_test(test_processUserAnswer_wrong, "test_processUserAnswer_wrong", 45); + run_test(test_processUserAnswer_correctAnswer_index3, "test_processUserAnswer_correctAnswer_index3", 56); + run_test(test_processUserAnswer_correctAnswer_index0, "test_processUserAnswer_correctAnswer_index0", 65); + run_test(test_processUserAnswer_wrongAnswer_index3, "test_processUserAnswer_wrongAnswer_index3", 74); + run_test(test_processUserAnswer_correctAnswer_index1, "test_processUserAnswer_correctAnswer_index1", 85); + run_test(test_processUserAnswer_correctAnswer_index2, "test_processUserAnswer_correctAnswer_index2", 96); + run_test(test_processUserAnswer_wrongAnswer_index1, "test_processUserAnswer_wrongAnswer_index1", 107); return UnityEnd(); }