You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

184 lines
4.1 KiB

#include "unity.h"
#include "Spiellogik.h"
#include "Umgebung.h"
#include <stdlib.h>
void setUp(void){
}
void tearDown(void){
}
//Test für sucheXWert
void test_sucheXWert(void){
int realU[N][N] = {0};
realU[15][19] = 12;
int result = sucheXWert(realU);
TEST_ASSERT_EQUAL_INT(15, result);
}
//Test für sucheYWert
void test_sucheYWert(void){
int realU[N][N] = {0};
realU[15][19] = 12;
int result = sucheYWert(realU);
TEST_ASSERT_EQUAL_INT(19, result);
}
//Test für sucheXWert
void test_sucheXWert2(void){
int realU[N][N] = {0};
realU[16][13] = 12;
int result = sucheXWert(realU);
TEST_ASSERT_EQUAL_INT(16, result);
}
//Test für sucheYWert
void test_sucheYWert2(void){
int realU[N][N] = {0};
realU[16][13] = 12;
int result = sucheYWert(realU);
TEST_ASSERT_EQUAL_INT(13, 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);
}
//Test Schlange nicht lang genug
void test_win_SchlangeNichtAusreichend(void){
int realU[N][N] = {0};
realU[15][5] = 15;
int result = win(realU);
TEST_ASSERT_EQUAL_INT(0, result);
}
//Tests für die Methode lose
//Test der Methode lose mit einer Bewegung nach oben auf
//ein freies Feld
void test_lose_up_freiesFeld(void){
int realU[20][20] = { 0 };
realU[10][12] = 4;
int result = lose(realU, 'u');
TEST_ASSERT_EQUAL_INT(0, result);
}
//Test der Methode lose mit einer Bewegung nach oben auf
//ein bereits belegtes Feld
void test_lose_up_belegtesFeld(void){
int realU[20][20] = { 0 };
realU[10][12] = 4;
realU[9][12] = 3;
int result = lose(realU, 'u');
TEST_ASSERT_EQUAL_INT(1, result);
}
//Test der Methode lose mit einer Bewegung nach oben ausserhalb
//der Spielfeld Begrenzungen
void test_lose_up_Obererrand(void){
int realU[20][20] = { 0 };
realU[0][12] = 4;
int result = lose(realU, 'u');
TEST_ASSERT_EQUAL_INT(1, result);
}
//Test der Methode lose mit einer Bewegung nach unten auf
//ein freies Feld
void test_lose_down_freiesFeld(void){
int realU[20][20] = { 0 };
realU[10][12] = 4;
int result = lose(realU, 'd');
TEST_ASSERT_EQUAL_INT(0, result);
}
//Test der Methode lose mit einer Bewegung nach unten auf
//ein belegtes Feld
void test_lose_down_belegtesFeld(void){
int realU[20][20] = { 0 };
realU[10][12] = 4;
realU[11][12] = 3;
int result = lose(realU, 'd');
TEST_ASSERT_EQUAL_INT(1, result);
}
//Test der Methode lose mit einer Bewegung nach links auf
//ein freies Feld
void test_lose_left_freiesFeld(void){
int realU[20][20] = { 0 };
realU[5][12] = 4;
int result = lose(realU, 'l');
TEST_ASSERT_EQUAL_INT(0, result);
}
//Test der Methode lose mit einer Bewegung nach links auf
//ein belegtes Feld
void test_lose_left_belegtesFeld(void){
int realU[20][20] = { 0 };
realU[5][12] = 4;
realU[5][11] = 3;
int result = lose(realU, 'l');
TEST_ASSERT_EQUAL_INT(1, result);
}
//Test der Methode lose mit einer Bewegung nach links über
//den linken Spielfeldrand
void test_lose_left_linkerRand(void){
int realU[20][20] = { 0 };
realU[5][0] = 4;
int result = lose(realU, 'l');
TEST_ASSERT_EQUAL_INT(1, result);
}
//Test der Methode lose mit einer Bewegung nach rechts auf
//ein freies Feld
void test_lose_right_freiesFeld(void){
int realU[20][20] = { 0 };
realU[5][12] = 4;
int result = lose(realU, 'r');
TEST_ASSERT_EQUAL_INT(0, result);
}
//Test der Methode lose mit einer Bewegung nach rechts auf
//ein belegtes Feld
void test_lose_right_belegtesFeld(void){
int realU[20][20] = { 0 };
realU[5][12] = 4;
realU[5][13] = 3;
int result = lose(realU, 'r');
TEST_ASSERT_EQUAL_INT(1, result);
}
//Test der Methode lose mit einer Bewegung nach links über
//den rechten Spielfeldrand
void test_lose_right_rechterRand(void){
int realU[20][20] = { 0 };
realU[5][N] = 4;
int result = lose(realU, 'l');
TEST_ASSERT_EQUAL_INT(1, result);
}