-
Notifications
You must be signed in to change notification settings - Fork 0
/
ServerTest.java
68 lines (47 loc) · 1.66 KB
/
ServerTest.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package backend.fxmlBackend.Server;
import backend.fxmlBackend.FXMLWarehouse;
import backend.serialization.SaveObject;
import backend.storage.administration.Warehouse;
import javafx.fxml.FXML;
import org.junit.jupiter.api.Test;
import java.io.*;
import java.lang.reflect.Array;
import java.net.Socket;
import java.util.ArrayList;
import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.Mockito.*;
class ServerTest {
/*
@Test
void run() throws IOException, ClassNotFoundException {
// Ich habe ihnen hier mal meinen Ansatz aufgeschrieben wie ich testen würde.
// Problem war dass writeObject final ist und Mockito keine finals kann.
//
// Ich habe das versucht hiermit:
// https://www.baeldung.com/mockito-final
// zu umgehen, aber ohne Erfolg.
//
//Ich habe ihnen jedenfalls mal meinen Ansatz da gelassen der auch funktionieren sollte wenn
// Mockito mit finals umgehen könnte.
//given
FXMLWarehouse fw = new FXMLWarehouse(100,10000);
Server server = mock(Server.class);
//when
when(server.fromClient.readObject()).thenReturn(0x2);
server.start();
//then
verify(server).toClient.writeObject(fw.getAllCargo());
}
*/
@Test
void run() throws IOException, ClassNotFoundException {
//given
FXMLWarehouse warehouse = spy(new FXMLWarehouse(100, 1000));
Server server = spy(new Server(warehouse));
//when
doReturn(0x2).when(server).readObject(null);
server.start();
//then
verify(server).writeObject(null, warehouse.getAllCargo());
}
}