1 | package geniusweb.protocol.session.mopac;
|
---|
2 |
|
---|
3 | import static org.junit.Assert.assertEquals;
|
---|
4 |
|
---|
5 | import java.util.Arrays;
|
---|
6 | import java.util.Collections;
|
---|
7 | import java.util.HashMap;
|
---|
8 | import java.util.HashSet;
|
---|
9 | import java.util.Map;
|
---|
10 |
|
---|
11 | import org.junit.Test;
|
---|
12 |
|
---|
13 | import geniusweb.actions.PartyId;
|
---|
14 | import geniusweb.inform.Agreements;
|
---|
15 | import geniusweb.protocol.ProtocolException;
|
---|
16 |
|
---|
17 | public class PartyStatesTest {
|
---|
18 |
|
---|
19 | private final PartyId party1 = new PartyId("party1");
|
---|
20 | private final PartyId party2 = new PartyId("party2");
|
---|
21 | private final PartyId party3 = new PartyId("party3");
|
---|
22 |
|
---|
23 | private final Map<PartyId, Integer> powers = new HashMap<>();
|
---|
24 | private final PartyStates states;
|
---|
25 |
|
---|
26 | public PartyStatesTest() {
|
---|
27 | powers.put(party1, 2);
|
---|
28 | powers.put(party2, 3);
|
---|
29 | powers.put(party3, 3);
|
---|
30 | states = new PartyStates(powers);
|
---|
31 | }
|
---|
32 |
|
---|
33 | @Test
|
---|
34 | public void testBasics() {
|
---|
35 | assertEquals(powers.keySet(), states.getNegotiatingParties());
|
---|
36 | assertEquals(powers.keySet(), states.getNotYetActed());
|
---|
37 | assertEquals(0, states.getExceptions().size());
|
---|
38 | }
|
---|
39 |
|
---|
40 | @Test
|
---|
41 | public void testException() {
|
---|
42 | PartyStates newstates = states
|
---|
43 | .with(new ProtocolException("bla", party1));
|
---|
44 | assertEquals(new Agreements(), newstates.getAgreements());
|
---|
45 | assertEquals(powers.keySet(), states.getNegotiatingParties());
|
---|
46 | assertEquals(new HashSet<>(Arrays.asList(party2, party3)),
|
---|
47 | newstates.getNotYetActed());
|
---|
48 | }
|
---|
49 |
|
---|
50 | @Test
|
---|
51 | public void testFinish() {
|
---|
52 | PartyStates newstates = states.finish();
|
---|
53 | assertEquals(new Agreements(), newstates.getAgreements());
|
---|
54 | assertEquals(powers.keySet(), states.getNegotiatingParties());
|
---|
55 | assertEquals(Collections.emptySet(), newstates.getNotYetActed());
|
---|
56 | }
|
---|
57 | }
|
---|