FelixKrull
3 years ago
3 changed files with 112 additions and 0 deletions
@ -1 +1,8 @@ |
|||
# CIiP-WiSe-2021-Projektarbeit-Mensch_Aerger_Dich_Nicht |
|||
by Jonas Wagner und Felix Krull |
|||
|
|||
## Beschreibung Projekt |
|||
|
|||
## Aufbau Spiel |
|||
|
|||
## Struktur Code |
@ -0,0 +1,30 @@ |
|||
import java.lang.reflect.Array; |
|||
import java.util.Arrays; |
|||
|
|||
public class Gameboard { |
|||
int[] board; |
|||
|
|||
public Gameboard() { |
|||
board = new int[56]; |
|||
} |
|||
|
|||
public void initGameboard (){ |
|||
for(int i = 0; i < 40; i++) { |
|||
if ( i % 10 == 0) { |
|||
board[i] = 1; |
|||
} |
|||
if( i % 10 == 9) { |
|||
board[i] = 2; |
|||
} |
|||
} |
|||
for (int i = 40; i < board.length; i++) { |
|||
board[i] = 3; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public String toString() { |
|||
return Arrays.toString(board); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,75 @@ |
|||
import static org.assertj.core.api.Assertions.*; |
|||
|
|||
import org.junit.jupiter.api.BeforeEach; |
|||
import org.junit.jupiter.api.Test; |
|||
import org.junit.jupiter.params.ParameterizedTest; |
|||
import org.junit.jupiter.params.provider.Arguments; |
|||
import org.junit.jupiter.params.provider.MethodSource; |
|||
|
|||
import java.util.stream.Stream; |
|||
|
|||
public class GameboardTest { |
|||
|
|||
private Gameboard gb; |
|||
|
|||
@BeforeEach |
|||
void setup() { |
|||
gb = new Gameboard(); |
|||
} |
|||
|
|||
@Test |
|||
void checkGameboardSize() { |
|||
String expectedResult = "56"; |
|||
String currentResult = "" + gb.board.length; |
|||
|
|||
assertThat(currentResult).describedAs("Dimensions").isEqualTo(expectedResult); |
|||
} |
|||
|
|||
@Test |
|||
void checkGameboardFilled() { |
|||
int[] expectedGameboard = new int[56]; |
|||
for(int i = 0; i < expectedGameboard.length; i++) { |
|||
expectedGameboard[i] = 0; |
|||
} |
|||
int [] givenGameboard = gb.board; |
|||
|
|||
assertThat(givenGameboard).describedAs("Initial Gameboard").isEqualTo(expectedGameboard); |
|||
} |
|||
|
|||
@ParameterizedTest |
|||
@MethodSource("FieldStream") |
|||
void checkGameboardFieldType(String testname, int Pos, int expectedResult) { |
|||
gb.initGameboard(); |
|||
int currentType = gb.board[Pos]; |
|||
assertThat(currentType).describedAs("Field Type").isEqualTo(expectedResult); |
|||
} |
|||
|
|||
static Stream<Arguments> FieldStream () { |
|||
return Stream.of( |
|||
Arguments.of("Normal Path", 1, 0), |
|||
Arguments.of("Starting Field", 0, 1), |
|||
Arguments.of("Starting Field", 10, 1), |
|||
Arguments.of("Starting Field", 20, 1), |
|||
Arguments.of("Starting Field", 30, 1), |
|||
Arguments.of("Doorway Field", 9, 2), |
|||
Arguments.of("Doorway Field", 19, 2), |
|||
Arguments.of("Doorway Field", 29, 2), |
|||
Arguments.of("Doorway Field", 39, 2), |
|||
Arguments.of("House Field", 40, 3), |
|||
Arguments.of("House Field", 55, 3) |
|||
); |
|||
} |
|||
|
|||
@Test |
|||
void checkPrintGameboard() { |
|||
String expectedResult = "[1, 0, 0, 0, 0, 0, 0, 0, 0, 2, " + |
|||
"1, 0, 0, 0, 0, 0, 0, 0, 0, 2, " + |
|||
"1, 0, 0, 0, 0, 0, 0, 0, 0, 2, " + |
|||
"1, 0, 0, 0, 0, 0, 0, 0, 0, 2, " + |
|||
"3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]"; |
|||
gb.initGameboard(); |
|||
String calculatedResult = gb.toString(); |
|||
assertThat(calculatedResult).describedAs("Print Gameboard").isEqualTo(expectedResult); |
|||
} |
|||
|
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue