source: protocol/src/test/java/geniusweb/protocol/session/mopac/PartyStatesTest.java@ 21

Last change on this file since 21 was 21, checked in by bart, 4 years ago

Version 1.5.

File size: 1.6 KB
Line 
1package geniusweb.protocol.session.mopac;
2
3import static org.junit.Assert.assertEquals;
4
5import java.util.Arrays;
6import java.util.Collections;
7import java.util.HashMap;
8import java.util.HashSet;
9import java.util.Map;
10
11import org.junit.Test;
12
13import geniusweb.actions.PartyId;
14import geniusweb.inform.Agreements;
15import geniusweb.protocol.ProtocolException;
16
17public 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}
Note: See TracBrowser for help on using the repository browser.