Changeset 21 for simplerunner/src/test


Ignore:
Timestamp:
09/22/20 08:52:04 (4 years ago)
Author:
bart
Message:

Version 1.5.

Location:
simplerunner/src/test
Files:
1 added
6 edited

Legend:

Unmodified
Added
Removed
  • simplerunner/src/test/java/geniusweb/simplerunner/ClassPathConnectionFactoryTest.java

    r9 r21  
    1111import geniusweb.actions.Action;
    1212import geniusweb.connection.ConnectionEnd;
    13 import geniusweb.party.inform.Inform;
     13import geniusweb.inform.Inform;
    1414import geniusweb.references.PartyRef;
    15 import geniusweb.simplerunner.ClassPathConnectionFactory;
    1615
    1716public class ClassPathConnectionFactoryTest {
  • simplerunner/src/test/java/geniusweb/simplerunner/SessionRunnerE2ETest.java

    r10 r21  
    11package geniusweb.simplerunner;
     2
     3import static org.junit.Assert.assertTrue;
    24
    35import java.io.IOException;
     
    2729@RunWith(Parameterized.class)
    2830public class SessionRunnerE2ETest {
     31        private static final int TEST_RUNTIME = 5000;
    2932        private final ObjectMapper jackson = new ObjectMapper();
    3033        private NegoRunner runner;
     
    3740                                .asList(new Object[][] { { "src/test/resources/settings.json" },
    3841                                                { "src/test/resources/settings2.json" },
    39                                                 { "src/test/resources/shaoptoursettings.json" } });
     42                                                { "src/test/resources/shaoptoursettings.json" },
     43                                                { "src/test/resources/mopac.json" } });
    4044        }
    4145
     
    5357
    5458                runner = new NegoRunner(settings, new ClassPathConnectionFactory(),
    55                                 logger);
     59                                logger, TEST_RUNTIME);
    5660
    5761        }
     
    6468        public void runTest() throws IOException {
    6569                runner.run();
     70                assertTrue(runner.isProperlyStopped());
     71                System.out.println("Final state:\n" + runner.getProtocol().getState());
    6672        }
    6773
  • simplerunner/src/test/java/geniusweb/simplerunner/SessionRunnerTest.java

    r18 r21  
    1616import org.mockito.ArgumentCaptor;
    1717
     18import geniusweb.actions.PartyId;
    1819import geniusweb.protocol.CurrentNegoState;
    1920import geniusweb.protocol.NegoState;
     
    2930public class SessionRunnerTest {
    3031        private static final ProtocolException PROTOCOL_EXC = new ProtocolException(
    31                         "fake protocol exception", "test");
     32                        "fake protocol exception", new PartyId("test"));
    3233        private CurrentNegoState finishedEvent;
    3334        private final long NOW = 1000;
     
    4748        public void smokeTest() {
    4849                new NegoRunner(mock(SessionSettings.class),
    49                                 mock(ProtocolToPartyConnFactory.class), logger);
     50                                mock(ProtocolToPartyConnFactory.class), logger, 5000);
    5051        }
    5152
     
    5960                                ProtocolToPartyConnFactory.class);
    6061
    61                 NegoRunner runner = spy(new NegoRunner(settings, factory, logger));
     62                NegoRunner runner = spy(
     63                                new NegoRunner(settings, factory, logger, 5000));
    6264                runner.run();
    6365
     
    7577                when(settings.getProtocol(any())).thenReturn(protocol);
    7678                SessionState state = mock(SessionState.class);
    77                 when(state.getError()).thenReturn(null);
    7879                when(protocol.getState()).thenReturn(state);
    7980                Reporter logger = mock(Reporter.class);
     
    8182                ProtocolToPartyConnFactory factory = mock(
    8283                                ProtocolToPartyConnFactory.class);
    83                 NegoRunner runner = spy(new NegoRunner(settings, factory, logger) {
    84                         @Override
    85                         protected void logFinal(Level level, NegoState state) {
    86                                 log.log(level, state.toString());
    87                         }
    88                 });
     84                NegoRunner runner = spy(
     85                                new NegoRunner(settings, factory, logger, 5000) {
     86                                        @Override
     87                                        protected void logFinal(Level level, NegoState state) {
     88                                                log.log(level, state.toString());
     89                                        }
     90                                });
    8991                ArgumentCaptor<Listener> listener = ArgumentCaptor
    9092                                .forClass(Listener.class);
     
    107109                when(settings.getProtocol(any())).thenReturn(protocol);
    108110                SessionState state = mock(SessionState.class);
    109                 when(state.getError()).thenReturn(PROTOCOL_EXC);
    110111                when(protocol.getState()).thenReturn(state);
    111112                @SuppressWarnings("unchecked")
    112113                ProtocolToPartyConnFactory factory = mock(
    113114                                ProtocolToPartyConnFactory.class);
    114                 NegoRunner runner = spy(new NegoRunner(settings, factory, logger) {
    115                         @Override
    116                         protected void logFinal(Level level, NegoState state) {
    117                                 log.log(level, state.toString());
    118                         }
    119                 });
     115                NegoRunner runner = spy(
     116                                new NegoRunner(settings, factory, logger, 5000) {
     117                                        @Override
     118                                        protected void logFinal(Level level, NegoState state) {
     119                                                log.log(level, state.toString());
     120                                        }
     121                                });
    120122                ArgumentCaptor<Listener> listener = ArgumentCaptor
    121123                                .forClass(Listener.class);
     
    126128                listener.getValue().notifyChange(finishedEvent);
    127129                verify(runner, times(1)).stop();
    128                 // check that the protocol error is logged properly
    129                 verify(logger, times(1)).log(eq(Level.WARNING), any(String.class));
     130                // check final state is logged
     131                String statestr = state.toString();
     132                verify(logger, times(1)).log(any(), eq(statestr));
     133
    130134        }
    131135
  • simplerunner/src/test/resources/jobs/jobs1.json

    r1 r21  
    3434                                "discreteutils": {
    3535                                        "valueUtilities": {
    36                                                 "yes":1,
    37                                                 "no":0
     36                                                "yes": 1,
     37                                                "no": 0
    3838                                        }
    3939                                }
     
    4242                                "discreteutils": {
    4343                                        "valueUtilities": {
    44                                                 "yes":1,
    45                                                 "no":0
     44                                                "yes": 1,
     45                                                "no": 0
    4646                                        }
    4747                                }
     
    5050                                "discreteutils": {
    5151                                        "valueUtilities": {
    52                                                 "low":0,
    53                                                 "medium":0.5,
    54                                                 "high":1
     52                                                "low": 0,
     53                                                "medium": 0.5,
     54                                                "high": 1
    5555                                        }
    5656                                }
     
    112112                        }
    113113                },
    114                 "name": "jobs1"
     114                "name": "jobs1",
     115                "reservationBid": {
     116                        "issuevalues": {
     117                                "salary": "3500",
     118                                "fte": "0.8",
     119                                "work from home": "1",
     120                                "lease car": "no",
     121                                "permanent contract": "yes",
     122                                "career development opportunities": "medium"
     123                        }
     124                }
    115125        }
    116126}
  • simplerunner/src/test/resources/jobs/jobs2.json

    r1 r21  
    3434                                "discreteutils": {
    3535                                        "valueUtilities": {
    36                                                 "yes":0,
    37                                                 "no":1
     36                                                "yes": 0,
     37                                                "no": 1
    3838                                        }
    3939                                }
     
    4242                                "discreteutils": {
    4343                                        "valueUtilities": {
    44                                                 "yes":0.23809523809523808,
    45                                                 "no":0.761904761904762
     44                                                "yes": 0.23809523809523808,
     45                                                "no": 0.761904761904762
    4646                                        }
    4747                                }
     
    5050                                "discreteutils": {
    5151                                        "valueUtilities": {
    52                                                 "low":1.0,
    53                                                 "medium":0.5,
    54                                                 "high":0
     52                                                "low": 1.0,
     53                                                "medium": 0.5,
     54                                                "high": 0
    5555                                        }
    5656                                }
     
    112112                        }
    113113                },
    114                 "name": "jobs2"
     114                "name": "jobs2",
     115                "reservationBid": {
     116                        "issuevalues": {
     117                                "salary": "3000",
     118                                "fte": "0.8",
     119                                "work from home": "0",
     120                                "lease car": "no",
     121                                "permanent contract": "no",
     122                                "career development opportunities": "medium"
     123                        }
     124                }
    115125        }
    116126}
  • simplerunner/src/test/resources/shaoptoursettings.json

    r18 r21  
    3434                        {
    3535                                "ProfileList": [
    36                                         "file:src/test/resources/jobs/jobs1partial.json?partial=10",
     36                                        "file:src/test/resources/jobs/jobs1partial.json",
    3737                                        "file:src/test/resources/jobs/jobs1partial.json"
    3838                                       
     
    4141                        {
    4242                                "ProfileList": [
    43                                         "file:src/test/resources/jobs/jobs2.json?partial=15",
     43                                        "file:src/test/resources/jobs/jobs2.json",
    4444                                        "file:src/test/resources/jobs/jobs2.json"
    4545                                       
     
    5555                                        "deadlinerounds": {
    5656                                                "rounds": 10,
    57                                                 "durationms": 10000
     57                                                "durationms": 1000
    5858                                        }
    5959                                }
Note: See TracChangeset for help on using the changeset viewer.