KaffeeMaus
11 months ago
3 changed files with 122 additions and 0 deletions
-
33src/main/c/Georg/tictactoe.c
-
13src/main/c/Georg/tictactoe.h
-
76src/test/c/Georg/test_tictactoe.c
@ -0,0 +1,33 @@ |
|||
#include <stdio.h> |
|||
#include <stdlib.h> |
|||
#include <string.h> |
|||
|
|||
#include "tictactoe.h" |
|||
|
|||
struct ticTacToe TICTACTOE; |
|||
|
|||
char* getWelcomeMessage(){ |
|||
return "Hallo und willkommen zu unserem TicTacToe Spiel. Anbei die Anleitung:\n"; |
|||
} |
|||
|
|||
char* getRulesMessage(){ |
|||
return "Das spiel wird über die Komandozeile gespielt.\n" |
|||
"Jeder Spielzug ist eine Eingabe in die Konsole. Die enstsprechenden Befehle stehen jeweils unterhalb des Spielfelds.\n" |
|||
"Um ein Zug zu tätigen musst du \"set x,y\" in die Konsole Eingeben. Die Koordinaten stehen dabei für Zeile und Spalte.\n" |
|||
"Mit dem Befehl \"start\" startest du das Spiel" |
|||
"Mit dem Befehl \"rules\" kannst du diese Nachricht erneut aufrufen."; |
|||
} |
|||
|
|||
struct ticTacToe createTicTacToe() { |
|||
struct ticTacToe newGame; |
|||
newGame.currentState = 0; |
|||
return newGame; |
|||
} |
|||
|
|||
int handleCommand( char* input ){ |
|||
if( strcmp(input, "start menu") == 0 ){ |
|||
return 0; |
|||
}else if( strcmp(input, "start game") == 0 ){ |
|||
return 1; |
|||
} |
|||
} |
@ -0,0 +1,13 @@ |
|||
#ifndef TICTACTOE_H |
|||
#define TICTACTOE_H |
|||
|
|||
struct ticTacToe{ |
|||
int currentState; |
|||
}; |
|||
|
|||
char* getWelcomeMessage(); |
|||
char* getRulesMessage(); |
|||
struct ticTacToe createTicTacToe(); |
|||
int handleCommand( char* input ); |
|||
|
|||
#endif //TICTACTOE_H |
@ -0,0 +1,76 @@ |
|||
#include "tictactoe.h" |
|||
#include "unity.h" |
|||
|
|||
void setup(void){ |
|||
|
|||
} |
|||
|
|||
void tearDown(void){ |
|||
|
|||
} |
|||
|
|||
void test_compileTest_shutBeAllwaysTrue(void){ |
|||
TEST_ASSERT_EQUAL_INT(1,1); |
|||
} |
|||
|
|||
void test_welcome_message(void){ |
|||
// arrange |
|||
char* expectedMessage = "Hallo und willkommen zu unserem TicTacToe Spiel. Anbei die Anleitung:\n"; |
|||
|
|||
// act |
|||
char* message = getWelcomeMessage(); |
|||
|
|||
// aassert |
|||
TEST_ASSERT_EQUAL_STRING(expectedMessage, message); |
|||
} |
|||
|
|||
void test_rules_message(void){ |
|||
// arrange |
|||
char* expectedMessage = "Das spiel wird über die Komandozeile gespielt.\n" |
|||
"Jeder Spielzug ist eine Eingabe in die Konsole. Die enstsprechenden Befehle stehen jeweils unterhalb des Spielfelds.\n" |
|||
"Um ein Zug zu tätigen musst du \"set x,y\" in die Konsole Eingeben. Die Koordinaten stehen dabei für Zeile und Spalte.\n" |
|||
"Mit dem Befehl \"start\" startest du das Spiel" |
|||
"Mit dem Befehl \"rules\" kannst du diese Nachricht erneut aufrufen."; |
|||
|
|||
// act |
|||
char* message = getRulesMessage(); |
|||
|
|||
// assert |
|||
TEST_ASSERT_EQUAL_STRING(expectedMessage, message); |
|||
} |
|||
|
|||
void test_initial_state(void){ |
|||
// arrange |
|||
struct ticTacToe newGame; |
|||
int expectedState = 0; |
|||
|
|||
// act |
|||
newGame = createTicTacToe(); |
|||
|
|||
// assert |
|||
TEST_ASSERT_EQUAL_INT( expectedState, newGame.currentState ); |
|||
} |
|||
|
|||
void test_command_startGame(void){ |
|||
// arrange |
|||
int expectedState = 1; |
|||
char* input = "start game"; |
|||
|
|||
// act |
|||
int actualState = handleCommand( input ); |
|||
|
|||
// assert |
|||
TEST_ASSERT_EQUAL_INT( expectedState, actualState ); |
|||
} |
|||
|
|||
void test_command_startMenu(void){ |
|||
// arrange |
|||
int expectedState = 0; |
|||
char* input = "start menu"; |
|||
|
|||
// act |
|||
int actualState = handleCommand( input ); |
|||
|
|||
// assert |
|||
TEST_ASSERT_EQUAL_INT( expectedState, actualState ); |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue