From 2992dd5611a993209104d59713bf21667b3b8b44 Mon Sep 17 00:00:00 2001 From: Jannis Date: Wed, 8 Feb 2023 13:55:19 +0100 Subject: [PATCH] Unittest Funktion win(Schlange lang genug) --- build/test/cache/test_Spiellogik.c | 52 +++++++++++++----- build/test/out/c/test_Spiellogik.o | Bin 13200 -> 13824 bytes build/test/out/c/test_Spiellogik_runner.o | Bin 11992 -> 12232 bytes build/test/out/test_Spiellogik.out | Bin 62408 -> 62632 bytes build/test/preprocess/files/test_Spiellogik.c | 52 +++++++++++++----- build/test/results/test_Spiellogik.pass | 36 ++++++------ build/test/results/test_Umgebung.pass | 2 +- build/test/results/test_test.pass | 2 +- build/test/runners/test_Spiellogik_runner.c | 28 +++++----- src/Spiellogik.h | 2 +- test/test_Spiellogik.c | 11 ++++ 11 files changed, 127 insertions(+), 58 deletions(-) diff --git a/build/test/cache/test_Spiellogik.c b/build/test/cache/test_Spiellogik.c index 5ce3638..247a06a 100644 --- a/build/test/cache/test_Spiellogik.c +++ b/build/test/cache/test_Spiellogik.c @@ -36,6 +36,32 @@ void test_test1(void){ + + + + + + +void test_win_SchlangegroesseAusreichend(void){ + + int realU[20][20] = {0}; + + realU[15][19] = (20*20)-1; + + int result = win(realU); + + + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(27), UNITY_DISPLAY_STYLE_INT); + +} + + + void test_feldFrei_Verhalten_bei_belegtem_Feld(void){ int realU[20][20]; @@ -50,7 +76,7 @@ void test_feldFrei_Verhalten_bei_belegtem_Feld(void){ ((void *)0) - ), (UNITY_UINT)(24), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(35), UNITY_DISPLAY_STYLE_INT); } @@ -70,7 +96,7 @@ void test_feldFrei_Verhalten_bei_freiem_Feld(void){ ((void *)0) - ), (UNITY_UINT)(32), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(43), UNITY_DISPLAY_STYLE_INT); } @@ -96,7 +122,7 @@ void test_lose_up_freiesFeld(void){ ((void *)0) - ), (UNITY_UINT)(43), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(54), UNITY_DISPLAY_STYLE_INT); } @@ -120,7 +146,7 @@ void test_lose_up_belegtesFeld(void){ ((void *)0) - ), (UNITY_UINT)(53), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(64), UNITY_DISPLAY_STYLE_INT); } @@ -144,7 +170,7 @@ void test_lose_up_Obererrand(void){ ((void *)0) - ), (UNITY_UINT)(63), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(74), UNITY_DISPLAY_STYLE_INT); } @@ -168,7 +194,7 @@ void test_lose_down_freiesFeld(void){ ((void *)0) - ), (UNITY_UINT)(73), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(84), UNITY_DISPLAY_STYLE_INT); } @@ -194,7 +220,7 @@ void test_lose_down_belegtesFeld(void){ ((void *)0) - ), (UNITY_UINT)(84), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(95), UNITY_DISPLAY_STYLE_INT); } @@ -218,7 +244,7 @@ void test_lose_left_freiesFeld(void){ ((void *)0) - ), (UNITY_UINT)(94), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(105), UNITY_DISPLAY_STYLE_INT); } @@ -244,7 +270,7 @@ void test_lose_left_belegtesFeld(void){ ((void *)0) - ), (UNITY_UINT)(105), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(116), UNITY_DISPLAY_STYLE_INT); } @@ -268,7 +294,7 @@ void test_lose_left_linkerRand(void){ ((void *)0) - ), (UNITY_UINT)(115), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(126), UNITY_DISPLAY_STYLE_INT); } @@ -292,7 +318,7 @@ void test_lose_right_freiesFeld(void){ ((void *)0) - ), (UNITY_UINT)(125), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(136), UNITY_DISPLAY_STYLE_INT); } @@ -318,7 +344,7 @@ void test_lose_right_belegtesFeld(void){ ((void *)0) - ), (UNITY_UINT)(136), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(147), UNITY_DISPLAY_STYLE_INT); } @@ -342,6 +368,6 @@ void test_lose_right_rechterRand(void){ ((void *)0) - ), (UNITY_UINT)(146), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(157), UNITY_DISPLAY_STYLE_INT); } diff --git a/build/test/out/c/test_Spiellogik.o b/build/test/out/c/test_Spiellogik.o index adae98840301c619090cb433e1682455bc6b72f6..6a63dcf08917a3c53a4a9d431fda0cf4e9c2f6b1 100644 GIT binary patch delta 3760 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 delta 1954 zcmZXVe{54#6vy9rUAuN`=Sss~A8g%TTf45m-WDPyFxL^70iq@d0VFK7kf3$`!YrUd z#Hn#4F2Xz^S>giOTuAm0ahAj%@yFN{F=EU#(HZ}c&OapT3=75>5$1XKo%+Z1CjH)X z&*%KO@4g?soS*MK6<338Q;9x+0A7cnOI==Get)%P;uVO1N!A9~EYM@O3EeNyel-FI zgms3jX9WKC7U381s=D5HO`*{{YpJ4O&Jn{_-<_qm9S;C}flj9Z(FyjQT7qjnBI^XvOoSQK2Ec2{> z1kTp(qASu$JH6{%rBf@aARzko)YZSDZt}St?}4}4O<8(rI?$rR43<|u3{6;Q(4a?X zuh1hxPYRtB`l-+#h29jp5)Dm*cA@tPEtUqfJ3yT1_rcu&N-4c+hYI)NKw}<;u-s_E zIrKM~@DXk#oyS8>ruv71<4qZ;!#Q##5JD#1)DF@-7D$ibaH!e$gLTX_s^}NT#n2k{ zSHN)dYw#dWHEa550TpFG&owmH(l3H#qJ4bwLlPZCe~YI3n4bF|-AHte)se@KTG~LuD>Yxx7c-#D>o$Y5;wTbekOR*ykC}S~^^_&oY8;UZ5lZh-CSWe_1jz%)) ziF5iW7L!@eCtUg~oJ?kGT0-_N|Ek7cl4}9cNadgp3#ptMjNy2y%kzeH%rt((sXze# zNk!EyF$|}>JcHIZkH!QR(^*L3SUTrf^4q?Y9h{ER*WSqFpal!0-8h!XsUxkpkm>TQ d3)rFa*k)!u^_snU8jG~*j@zqmM44j=@4s`$C_w-K diff --git a/build/test/out/test_Spiellogik.out b/build/test/out/test_Spiellogik.out index fc9c9f40545e2d012bfc555fc0d68d7df8513ee1..0e7870490a8247c6153643376278b7c461263206 100755 GIT binary patch delta 19447 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 delta 19179 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 diff --git a/build/test/preprocess/files/test_Spiellogik.c b/build/test/preprocess/files/test_Spiellogik.c index 5ce3638..247a06a 100644 --- a/build/test/preprocess/files/test_Spiellogik.c +++ b/build/test/preprocess/files/test_Spiellogik.c @@ -36,6 +36,32 @@ void test_test1(void){ + + + + + + +void test_win_SchlangegroesseAusreichend(void){ + + int realU[20][20] = {0}; + + realU[15][19] = (20*20)-1; + + int result = win(realU); + + + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(27), UNITY_DISPLAY_STYLE_INT); + +} + + + void test_feldFrei_Verhalten_bei_belegtem_Feld(void){ int realU[20][20]; @@ -50,7 +76,7 @@ void test_feldFrei_Verhalten_bei_belegtem_Feld(void){ ((void *)0) - ), (UNITY_UINT)(24), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(35), UNITY_DISPLAY_STYLE_INT); } @@ -70,7 +96,7 @@ void test_feldFrei_Verhalten_bei_freiem_Feld(void){ ((void *)0) - ), (UNITY_UINT)(32), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(43), UNITY_DISPLAY_STYLE_INT); } @@ -96,7 +122,7 @@ void test_lose_up_freiesFeld(void){ ((void *)0) - ), (UNITY_UINT)(43), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(54), UNITY_DISPLAY_STYLE_INT); } @@ -120,7 +146,7 @@ void test_lose_up_belegtesFeld(void){ ((void *)0) - ), (UNITY_UINT)(53), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(64), UNITY_DISPLAY_STYLE_INT); } @@ -144,7 +170,7 @@ void test_lose_up_Obererrand(void){ ((void *)0) - ), (UNITY_UINT)(63), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(74), UNITY_DISPLAY_STYLE_INT); } @@ -168,7 +194,7 @@ void test_lose_down_freiesFeld(void){ ((void *)0) - ), (UNITY_UINT)(73), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(84), UNITY_DISPLAY_STYLE_INT); } @@ -194,7 +220,7 @@ void test_lose_down_belegtesFeld(void){ ((void *)0) - ), (UNITY_UINT)(84), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(95), UNITY_DISPLAY_STYLE_INT); } @@ -218,7 +244,7 @@ void test_lose_left_freiesFeld(void){ ((void *)0) - ), (UNITY_UINT)(94), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(105), UNITY_DISPLAY_STYLE_INT); } @@ -244,7 +270,7 @@ void test_lose_left_belegtesFeld(void){ ((void *)0) - ), (UNITY_UINT)(105), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(116), UNITY_DISPLAY_STYLE_INT); } @@ -268,7 +294,7 @@ void test_lose_left_linkerRand(void){ ((void *)0) - ), (UNITY_UINT)(115), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(126), UNITY_DISPLAY_STYLE_INT); } @@ -292,7 +318,7 @@ void test_lose_right_freiesFeld(void){ ((void *)0) - ), (UNITY_UINT)(125), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(136), UNITY_DISPLAY_STYLE_INT); } @@ -318,7 +344,7 @@ void test_lose_right_belegtesFeld(void){ ((void *)0) - ), (UNITY_UINT)(136), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(147), UNITY_DISPLAY_STYLE_INT); } @@ -342,6 +368,6 @@ void test_lose_right_rechterRand(void){ ((void *)0) - ), (UNITY_UINT)(146), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(157), UNITY_DISPLAY_STYLE_INT); } diff --git a/build/test/results/test_Spiellogik.pass b/build/test/results/test_Spiellogik.pass index d5dd92f..e883538 100644 --- a/build/test/results/test_Spiellogik.pass +++ b/build/test/results/test_Spiellogik.pass @@ -7,64 +7,68 @@ :line: 12 :message: '' :unity_test_time: 0 +- :test: test_win_SchlangegroesseAusreichend + :line: 22 + :message: '' + :unity_test_time: 0 - :test: test_feldFrei_Verhalten_bei_belegtem_Feld - :line: 19 + :line: 30 :message: '' :unity_test_time: 0 - :test: test_feldFrei_Verhalten_bei_freiem_Feld - :line: 27 + :line: 38 :message: '' :unity_test_time: 0 - :test: test_lose_up_freiesFeld - :line: 38 + :line: 49 :message: '' :unity_test_time: 0 - :test: test_lose_up_belegtesFeld - :line: 47 + :line: 58 :message: '' :unity_test_time: 0 - :test: test_lose_up_Obererrand - :line: 58 + :line: 69 :message: '' :unity_test_time: 0 - :test: test_lose_down_freiesFeld - :line: 68 + :line: 79 :message: '' :unity_test_time: 0 - :test: test_lose_down_belegtesFeld - :line: 78 + :line: 89 :message: '' :unity_test_time: 0 - :test: test_lose_left_freiesFeld - :line: 89 + :line: 100 :message: '' :unity_test_time: 0 - :test: test_lose_left_belegtesFeld - :line: 99 + :line: 110 :message: '' :unity_test_time: 0 - :test: test_lose_left_linkerRand - :line: 110 + :line: 121 :message: '' :unity_test_time: 0 - :test: test_lose_right_freiesFeld - :line: 120 + :line: 131 :message: '' :unity_test_time: 0 - :test: test_lose_right_belegtesFeld - :line: 130 + :line: 141 :message: '' :unity_test_time: 0 - :test: test_lose_right_rechterRand - :line: 141 + :line: 152 :message: '' :unity_test_time: 0 :failures: [] :ignores: [] :counts: - :total: 14 - :passed: 14 + :total: 15 + :passed: 15 :failed: 0 :ignored: 0 :stdout: [] -:time: 0.000997625000309199 +:time: 0.0010818149985425407 diff --git a/build/test/results/test_Umgebung.pass b/build/test/results/test_Umgebung.pass index 2923dbb..ba7a29b 100644 --- a/build/test/results/test_Umgebung.pass +++ b/build/test/results/test_Umgebung.pass @@ -19,4 +19,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.0012777290012309095 +:time: 0.0012024529987684218 diff --git a/build/test/results/test_test.pass b/build/test/results/test_test.pass index c51756b..ab43257 100644 --- a/build/test/results/test_test.pass +++ b/build/test/results/test_test.pass @@ -15,4 +15,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.0011423740015743533 +:time: 0.001348579000477912 diff --git a/build/test/runners/test_Spiellogik_runner.c b/build/test/runners/test_Spiellogik_runner.c index 4db60cb..1385387 100644 --- a/build/test/runners/test_Spiellogik_runner.c +++ b/build/test/runners/test_Spiellogik_runner.c @@ -11,6 +11,7 @@ char* GlobalOrderError; extern void setUp(void); extern void tearDown(void); extern void test_test1(void); +extern void test_win_SchlangegroesseAusreichend(void); extern void test_feldFrei_Verhalten_bei_belegtem_Feld(void); extern void test_feldFrei_Verhalten_bei_freiem_Feld(void); extern void test_lose_up_freiesFeld(void); @@ -89,19 +90,20 @@ int main(void) { UnityBegin("test_Spiellogik.c"); run_test(test_test1, "test_test1", 12); - run_test(test_feldFrei_Verhalten_bei_belegtem_Feld, "test_feldFrei_Verhalten_bei_belegtem_Feld", 19); - run_test(test_feldFrei_Verhalten_bei_freiem_Feld, "test_feldFrei_Verhalten_bei_freiem_Feld", 27); - run_test(test_lose_up_freiesFeld, "test_lose_up_freiesFeld", 38); - run_test(test_lose_up_belegtesFeld, "test_lose_up_belegtesFeld", 47); - run_test(test_lose_up_Obererrand, "test_lose_up_Obererrand", 58); - run_test(test_lose_down_freiesFeld, "test_lose_down_freiesFeld", 68); - run_test(test_lose_down_belegtesFeld, "test_lose_down_belegtesFeld", 78); - run_test(test_lose_left_freiesFeld, "test_lose_left_freiesFeld", 89); - run_test(test_lose_left_belegtesFeld, "test_lose_left_belegtesFeld", 99); - run_test(test_lose_left_linkerRand, "test_lose_left_linkerRand", 110); - run_test(test_lose_right_freiesFeld, "test_lose_right_freiesFeld", 120); - run_test(test_lose_right_belegtesFeld, "test_lose_right_belegtesFeld", 130); - run_test(test_lose_right_rechterRand, "test_lose_right_rechterRand", 141); + run_test(test_win_SchlangegroesseAusreichend, "test_win_SchlangegroesseAusreichend", 22); + run_test(test_feldFrei_Verhalten_bei_belegtem_Feld, "test_feldFrei_Verhalten_bei_belegtem_Feld", 30); + run_test(test_feldFrei_Verhalten_bei_freiem_Feld, "test_feldFrei_Verhalten_bei_freiem_Feld", 38); + run_test(test_lose_up_freiesFeld, "test_lose_up_freiesFeld", 49); + run_test(test_lose_up_belegtesFeld, "test_lose_up_belegtesFeld", 58); + run_test(test_lose_up_Obererrand, "test_lose_up_Obererrand", 69); + run_test(test_lose_down_freiesFeld, "test_lose_down_freiesFeld", 79); + run_test(test_lose_down_belegtesFeld, "test_lose_down_belegtesFeld", 89); + run_test(test_lose_left_freiesFeld, "test_lose_left_freiesFeld", 100); + run_test(test_lose_left_belegtesFeld, "test_lose_left_belegtesFeld", 110); + run_test(test_lose_left_linkerRand, "test_lose_left_linkerRand", 121); + run_test(test_lose_right_freiesFeld, "test_lose_right_freiesFeld", 131); + run_test(test_lose_right_belegtesFeld, "test_lose_right_belegtesFeld", 141); + run_test(test_lose_right_rechterRand, "test_lose_right_rechterRand", 152); return UnityEnd(); } diff --git a/src/Spiellogik.h b/src/Spiellogik.h index e676795..9b3120e 100644 --- a/src/Spiellogik.h +++ b/src/Spiellogik.h @@ -4,7 +4,7 @@ #define N 20 int probe(int input); -int win(realU[N][N]); +int win(int realU[N][N]); int feldFrei(int realU[N][N], int ii, int jj); int lose(int realU[N][N], char richtung); diff --git a/test/test_Spiellogik.c b/test/test_Spiellogik.c index a970b52..69a006b 100644 --- a/test/test_Spiellogik.c +++ b/test/test_Spiellogik.c @@ -16,6 +16,17 @@ void test_test1(void){ TEST_ASSERT_EQUAL_INT(2, result); } +//Tests für Funktion win + +//Testet ob die Schlange lang genug ist +void test_win_SchlangegroesseAusreichend(void){ + int realU[N][N] = {0}; + realU[15][19] = (N*N)-1; + int result = win(realU); + + TEST_ASSERT_EQUAL_INT(1, result); +} + void test_feldFrei_Verhalten_bei_belegtem_Feld(void){ int realU[N][N]; realU[11][12] = 1;