diff options
-rw-r--r-- | test/ch/epfl/xblast/GameStateSerializerTest.java | 71 | ||||
-rw-r--r-- | test/ch/epfl/xblast/client/GameStateDeserializerTest.java | 28 |
2 files changed, 24 insertions, 75 deletions
diff --git a/test/ch/epfl/xblast/GameStateSerializerTest.java b/test/ch/epfl/xblast/GameStateSerializerTest.java deleted file mode 100644 index c0547bb..0000000 --- a/test/ch/epfl/xblast/GameStateSerializerTest.java +++ /dev/null | |||
@@ -1,71 +0,0 @@ | |||
1 | package ch.epfl.xblast; | ||
2 | |||
3 | import ch.epfl.xblast.server.*; | ||
4 | import ch.epfl.xblast.server.Level; | ||
5 | import org.junit.Assert; | ||
6 | import org.junit.Test; | ||
7 | |||
8 | import java.lang.reflect.Array; | ||
9 | import java.util.ArrayList; | ||
10 | import java.util.Arrays; | ||
11 | import java.util.List; | ||
12 | import java.util.stream.Collectors; | ||
13 | |||
14 | /** | ||
15 | * @author Timothée FLOURE (257420) | ||
16 | */ | ||
17 | public class GameStateSerializerTest { | ||
18 | |||
19 | |||
20 | /** | ||
21 | * Build a list a bytes corresponding to the serialized data of the initial GameState. | ||
22 | * | ||
23 | * @return the serialized gametstate | ||
24 | */ | ||
25 | public static List<Byte> getInitialValues() { | ||
26 | List<Integer> sourceValues = Arrays.asList( | ||
27 | // Serialized Board | ||
28 | 121, -50, 2, 1, -2, 0, 3, 1, 3, 1, -2, 0, 1, 1, 3, 1, 3, | ||
29 | 1, 3, 1, 1, -2, 0, 1, 3, 1, 3, -2, 0, -1, 1, 3, 1, 3, 1, | ||
30 | 3, 1, 1, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, | ||
31 | 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, | ||
32 | 3, 1, 0, 0, 3, 1, 3, 1, 0, 0, 1, 1, 3, 1, 1, 0, 0, 1, 3, | ||
33 | 1, 3, 0, 0, -1, 1, 3, 1, 1, -5, 2, 3, 2, 3, -5, 2, 3, 2, | ||
34 | 3, 1, -2, 0, 3, -2, 0, 1, 3, 2, 1, 2, | ||
35 | // Explosions (blasts & bombs) | ||
36 | 4, -128, 16, -63, 16, | ||
37 | // Players | ||
38 | 3, 24, 24, 6, | ||
39 | 3, -40, 24, 26, | ||
40 | 3, -40, -72, 46, | ||
41 | 3, 24, -72, 66, | ||
42 | // Ticks | ||
43 | 60); | ||
44 | |||
45 | // Build a List of Bytes from the sources values | ||
46 | return sourceValues.stream().map(i -> (byte) i.intValue()).collect(Collectors.toList()); | ||
47 | } | ||
48 | |||
49 | @Test | ||
50 | public void IntialGameStateSerializationTest() { | ||
51 | List<Byte> expectedValues = getInitialValues(); | ||
52 | |||
53 | // Get the current values | ||
54 | List<Byte> currentValues = GameStateSerializer.serialize( | ||
55 | Level.DEFAULT_LEVEL.painter(), | ||
56 | Level.DEFAULT_LEVEL.initialState() | ||
57 | ); | ||
58 | |||
59 | // Check the first element (number of elements) | ||
60 | Assert.assertEquals( | ||
61 | Byte.toUnsignedInt(expectedValues.get(0)), | ||
62 | Byte.toUnsignedInt(currentValues.get(0)) | ||
63 | ); | ||
64 | |||
65 | // Check the rest of the data chunk | ||
66 | Assert.assertEquals( | ||
67 | expectedValues.subList(1,expectedValues.size()), | ||
68 | currentValues.subList(1,expectedValues.size()) | ||
69 | ); | ||
70 | } | ||
71 | } | ||
diff --git a/test/ch/epfl/xblast/client/GameStateDeserializerTest.java b/test/ch/epfl/xblast/client/GameStateDeserializerTest.java index e74728e..418d283 100644 --- a/test/ch/epfl/xblast/client/GameStateDeserializerTest.java +++ b/test/ch/epfl/xblast/client/GameStateDeserializerTest.java | |||
@@ -1,9 +1,8 @@ | |||
1 | package ch.epfl.xblast.client; | 1 | package ch.epfl.xblast.client; |
2 | 2 | ||
3 | import ch.epfl.xblast.GameStateSerializerTest; | ||
4 | import org.junit.Test; | 3 | import org.junit.Test; |
5 | 4 | ||
6 | import java.util.List; | 5 | import java.util.Arrays; |
7 | 6 | ||
8 | import static org.junit.Assert.fail; | 7 | import static org.junit.Assert.fail; |
9 | 8 | ||
@@ -13,12 +12,33 @@ import static org.junit.Assert.fail; | |||
13 | */ | 12 | */ |
14 | public class GameStateDeserializerTest { | 13 | public class GameStateDeserializerTest { |
15 | 14 | ||
16 | private static final List<Byte> SERIALIZED_INITIAL_GAME_STATE = GameStateSerializerTest.getInitialValues(); | 15 | private static final Byte[] SERIALIZED_GAME_STATE = { |
16 | // Serialized Board | ||
17 | 121, -50, 2, 1, -2, 0, 3, 1, 3, 1, -2, 0, 1, 1, 3, 1, 3, | ||
18 | 1, 3, 1, 1, -2, 0, 1, 3, 1, 3, -2, 0, -1, 1, 3, 1, 3, 1, | ||
19 | 3, 1, 1, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, | ||
20 | 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, | ||
21 | 3, 1, 0, 0, 3, 1, 3, 1, 0, 0, 1, 1, 3, 1, 1, 0, 0, 1, 3, | ||
22 | 1, 3, 0, 0, -1, 1, 3, 1, 1, -5, 2, 3, 2, 3, -5, 2, 3, 2, | ||
23 | 3, 1, -2, 0, 3, -2, 0, 1, 3, 2, 1, 2, | ||
24 | |||
25 | // Explosions (blasts & bombs) | ||
26 | 4, -128, 16, -63, 16, | ||
27 | |||
28 | // Players | ||
29 | 3, 24, 24, 6, | ||
30 | 3, -40, 24, 26, | ||
31 | 3, -40, -72, 46, | ||
32 | 3, 24, -72, 66, | ||
33 | |||
34 | // Ticks | ||
35 | 60 | ||
36 | }; | ||
17 | 37 | ||
18 | @Test | 38 | @Test |
19 | public void deserializationTerminates() { | 39 | public void deserializationTerminates() { |
20 | try { | 40 | try { |
21 | GameStateDeserializer.deserialize(SERIALIZED_INITIAL_GAME_STATE); | 41 | GameStateDeserializer.deserialize(Arrays.asList(SERIALIZED_GAME_STATE)); |
22 | } catch (Exception e) { | 42 | } catch (Exception e) { |
23 | fail(e.getMessage()); | 43 | fail(e.getMessage()); |
24 | } | 44 | } |