|
|
#ifdef TEST
#include "unity.h"
#include "unistd.h"
#include "Modules.c"
void setUp(void) { }
void tearDown(void) { }
void test_checkBallPosition_output_if_goal(void) { /* arrange */ binX = 1; binY = 1;
ballX = 1; ballY = 3;
/* act */ int output = checkBallPosition();
/* assert */ TEST_ASSERT_EQUAL(1, output); }
void test_checkBallPosition_output_if_no_goal(void) { /* arrange */ binX = 1; binY = 1;
ballX = 1; ballY = 1;
/* act */ int output = checkBallPosition();
/* assert */ TEST_ASSERT_EQUAL(2, output); }
void test_sortScoreboard_check_if_file_is_created(void) { /* arrange */
/* act */ if (access("ScoreBoard.txt", 0) == 0) { remove("ScoreBoard.txt"); }
sortScoreboard();
int output = access("ScoreBoard.txt", 0);
/* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_clearField_check_if_Playgroung_clear(void) { /* arrange */ field[3][3]='T'; int output = 0; /* act */ clearField(); for (int i = 0; i < fieldWidth; i++) { for (int j = 0; j < fieldHeigth; j++) { if(field[i][j] != ' ') { output=1; } } }
/* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_getStartPosition_check_given_position(void) { /* arrange */ int output = 0; int width = 10; int heigth = 10; /* act */ buildBin(width, heigth);
if (field[width][heigth] != 'V' || field[width + 1][heigth + 1] != '\\' || field[width + 2][heigth + 2] != '\\' || field[width - 1][heigth + 1] != '/' || field[width - 2][heigth + 2] != '/' || field[width][heigth + 1] != ' ') output = 1;
/* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_walls_length_correctly_inserted(void){ /* arrange */ int output = 0; int wallX = 5; int wallY = 5; int wallLength = 3; int counter = wallLength; int binX = 10; /* act */ generateField(); for (int i = 0; i < fieldWidth; i++) { for(int j = 0; j < fieldHeigth; j++){ if(field[i][j] == '_') counter++; } } if(counter != wallLength) output = 1;
/* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_sortScoreboard_check_if_file_is_being_read(void) { /* arrange */ char Text[4]; FILE *x; int y;
/* act */ if (access("ScoreBoard.txt", 0) == 0) { remove("ScoreBoard.txt"); }
sortScoreboard();
x = fopen("ScoreBoard.txt", "a+");
fputs("Test", x); rewind(x); for(int i = 0; i < 4; i++) { fscanf(x, "%s", &Text[i]); }
if(strcmp(Text, "Test") == 0) { y = 0; } /* assert */ TEST_ASSERT_EQUAL(0, y); } void test_generateField_check_last_position_change_on_score(void) { /* arrange */ scorePoints = 321; int output = 1;
/* act */ generateField();
if (field[12][1] != '0') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_middle_position_change_on_score(void) { /* arrange */
scorePoints = 321; int output = 1;
/* act */ generateField();
if (field[11][1] != '0') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_first_position_change_on_score(void) { /* arrange */
scorePoints = 321; int output = 1;
/* act */ generateField();
if (field[10][1] == '3') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); } void test_generateField_check_if_first_life_away(void) { /* arrange */ int output = 1; lifeCount=2;
/* act */ generateField();
if (field[3][1] == 'X') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_if_second_life_away(void) { /* arrange */ int output = 1; lifeCount = 1;
/* act */ generateField();
if (field[2][1] == 'X') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_if_third_life_away(void) { /* arrange */ int output = 1; lifeCount = 0;
/* act */ generateField();
if (field[1][1] == 'X') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_negative_points_not_possible(void){ int output = 1; scorePoints = -50; generateField();
output = scorePoints;
TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_if_first_live_is_displayed_correctly(void) { /* arrange */ int output = 1; lifeCount = 3;
/* act */ generateField();
if (field[3][1] == 'O') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_if_second_live_is_displayed_correctly(void) { /* arrange */ int output = 1; lifeCount = 2;
/* act */ generateField();
if (field[2][1] == 'O') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_if_third_live_is_displayed_correctly(void) { /* arrange */ int output = 1; lifeCount = 1;
/* act */ generateField();
if (field[1][1] == 'O') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_if_wind_form_right_correct_displayed(void){ /* arrange */ int output = 1; windForce = -2;
/* act */ generateField();
if (field[19][1] == '<') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
void test_generateField_check_if_wind_form_left_correct_displayed(void){ /* arrange */ int output = 1; windForce = 2;
/* act */ generateField();
if (field[19][1] == '>') { output = 0; } /* assert */ TEST_ASSERT_EQUAL(0, output); }
#endif // TEST
|