413 lines
20 KiB
Java
413 lines
20 KiB
Java
package jmri.jmrix.openlcb;
|
|
|
|
import jmri.InstanceManager;
|
|
import jmri.IdTagManager;
|
|
import jmri.util.JUnitUtil;
|
|
|
|
import org.openlcb.*;
|
|
|
|
import org.junit.Assert;
|
|
import org.junit.jupiter.api.*;
|
|
|
|
/**
|
|
* Tests for the OlcbSignalMast implementation
|
|
*
|
|
* @author Bob Jacobsen Copyright (C) 2013, 2017, 2018
|
|
* updated to JUnit4 2016
|
|
*/
|
|
public class OlcbSignalMastTest {
|
|
|
|
@Test
|
|
public void testCtor1() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($5)");
|
|
|
|
Assert.assertEquals("system name", "MF$olm:AAR-1946:PL-1-high-abs($5)", t.getSystemName());
|
|
|
|
// check last reference using 5 above
|
|
Assert.assertEquals(5, OlcbSignalMast.getLastRef());
|
|
}
|
|
|
|
@Test
|
|
public void testStopAspect() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
t.setOutputForAppearance("Stop", "1.2.3.4.5.6.7.8");
|
|
|
|
Assert.assertEquals("Stop aspect event", "1.2.3.4.5.6.7.8", t.getOutputForAppearance("Stop"));
|
|
}
|
|
|
|
@Test
|
|
public void testSetGetEvents() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
|
|
t.setLitEventId("1.2.3.4.5.6.7.1");
|
|
Assert.assertEquals("lit", "1.2.3.4.5.6.7.1", t.getLitEventId());
|
|
t.setNotLitEventId("1.2.3.4.5.6.7.2");
|
|
Assert.assertEquals("not lit", "1.2.3.4.5.6.7.2", t.getNotLitEventId());
|
|
|
|
t.setHeldEventId("1.2.3.4.5.6.7.3");
|
|
Assert.assertEquals("held", "1.2.3.4.5.6.7.3", t.getHeldEventId());
|
|
t.setNotHeldEventId("1.2.3.4.5.6.7.4");
|
|
Assert.assertEquals("lit", "1.2.3.4.5.6.7.4", t.getNotHeldEventId());
|
|
}
|
|
|
|
@Test
|
|
public void testUnsetEvents() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
|
|
Assert.assertEquals("lit", "00.00.00.00.00.00.00.00", t.getLitEventId());
|
|
Assert.assertEquals("not lit", "00.00.00.00.00.00.00.00", t.getNotLitEventId());
|
|
|
|
Assert.assertEquals("held", "00.00.00.00.00.00.00.00", t.getHeldEventId());
|
|
Assert.assertEquals("lit", "00.00.00.00.00.00.00.00", t.getNotHeldEventId());
|
|
}
|
|
|
|
@Test
|
|
public void testReceiveLitPcerMessage() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
|
|
t.setLitEventId("1.2.3.4.5.6.7.1");
|
|
t.setNotLitEventId("1.2.3.4.5.6.7.2");
|
|
t.setHeldEventId("1.2.3.4.5.6.7.3");
|
|
t.setNotHeldEventId("1.2.3.4.5.6.7.4");
|
|
|
|
t.setOutputForAppearance("Clear", "1.2.3.4.5.6.7.10");
|
|
t.setOutputForAppearance("Approach", "1.2.3.4.5.6.7.11");
|
|
t.setOutputForAppearance("Permissive", "1.2.3.4.5.6.7.12");
|
|
t.setOutputForAppearance("Stop", "1.2.3.4.5.6.7.13");
|
|
|
|
Assert.assertEquals("Init sent for 8 events", 32, messages.size());
|
|
resetMessages(); // reset test message queue
|
|
|
|
// confirm that setting again doesn't resend
|
|
t.setLitEventId("1.2.3.4.5.6.7.1");
|
|
t.setNotLitEventId("1.2.3.4.5.6.7.2");
|
|
t.setHeldEventId("1.2.3.4.5.6.7.3");
|
|
t.setNotHeldEventId("1.2.3.4.5.6.7.4");
|
|
t.setOutputForAppearance("Clear", "1.2.3.4.5.6.7.10");
|
|
t.setOutputForAppearance("Approach", "1.2.3.4.5.6.7.11");
|
|
t.setOutputForAppearance("Permissive", "1.2.3.4.5.6.7.12");
|
|
t.setOutputForAppearance("Stop", "1.2.3.4.5.6.7.13");
|
|
|
|
Assert.assertEquals("Init sent 0 events 2nd time", 0, messages.size());
|
|
|
|
// but a different event does
|
|
t.setOutputForAppearance("Stop", "11.2.3.4.5.6.7.13");
|
|
Assert.assertEquals("Init for single new event", 4, messages.size());
|
|
resetMessages(); // reset test message queue
|
|
|
|
// and zero doesn't
|
|
t.setOutputForAppearance("Stop", "0.0.0.0.0.0.0.0");
|
|
Assert.assertEquals("Init sent nothing", 0, messages.size());
|
|
resetMessages(); // reset test message queue
|
|
|
|
Assert.assertTrue("lit defaults true", t.getLit());
|
|
|
|
org.openlcb.Message msg;
|
|
msg = new org.openlcb.ProducerConsumerEventReportMessage(new NodeID(), new OlcbAddress("1.2.3.4.5.6.7.2", null).toEventID());
|
|
t.handleMessage(msg);
|
|
Assert.assertFalse("lit false", t.getLit());
|
|
|
|
msg = new org.openlcb.ProducerConsumerEventReportMessage(new NodeID(), new OlcbAddress("1.2.3.4.5.6.7.1", null).toEventID());
|
|
t.handleMessage(msg);
|
|
Assert.assertTrue("lit true", t.getLit());
|
|
|
|
Assert.assertEquals("none sent", 0, messages.size());
|
|
}
|
|
|
|
@Test
|
|
public void testReceiveIdProducerLitMessage() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
|
|
t.setLitEventId("1.2.3.4.5.6.7.1");
|
|
t.setNotLitEventId("1.2.3.4.5.6.7.2");
|
|
t.setHeldEventId("1.2.3.4.5.6.7.3");
|
|
t.setNotHeldEventId("1.2.3.4.5.6.7.4");
|
|
t.setOutputForAppearance("Clear", "1.2.3.4.5.6.7.10");
|
|
t.setOutputForAppearance("Approach", "1.2.3.4.5.6.7.11");
|
|
t.setOutputForAppearance("Permissive", "1.2.3.4.5.6.7.12");
|
|
t.setOutputForAppearance("Stop", "1.2.3.4.5.6.7.13");
|
|
|
|
Assert.assertEquals("Init sent for 8 events", 32, messages.size());
|
|
resetMessages(); // reset test message queue
|
|
|
|
Assert.assertTrue("lit defaults true", t.getLit());
|
|
|
|
org.openlcb.Message msg;
|
|
msg = new org.openlcb.IdentifyProducersMessage(new NodeID(), new OlcbAddress("1.2.3.4.5.6.7.2", null).toEventID());
|
|
t.handleMessage(msg);
|
|
|
|
Assert.assertTrue("lit still true", t.getLit());
|
|
|
|
Assert.assertEquals("reply sent", 1, messages.size());
|
|
}
|
|
|
|
@Test
|
|
public void testReceiveLitProducerIdMessage() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
|
|
t.setLitEventId("1.2.3.4.5.6.7.1");
|
|
t.setNotLitEventId("1.2.3.4.5.6.7.2");
|
|
t.setHeldEventId("1.2.3.4.5.6.7.3");
|
|
t.setNotHeldEventId("1.2.3.4.5.6.7.4");
|
|
t.setOutputForAppearance("Clear", "1.2.3.4.5.6.7.10");
|
|
t.setOutputForAppearance("Approach", "1.2.3.4.5.6.7.11");
|
|
t.setOutputForAppearance("Permissive", "1.2.3.4.5.6.7.12");
|
|
t.setOutputForAppearance("Stop", "1.2.3.4.5.6.7.13");
|
|
|
|
Assert.assertEquals("Init sent for 8 events", 32, messages.size());
|
|
resetMessages(); // reset test message queue
|
|
|
|
Assert.assertTrue("lit defaults true", t.getLit());
|
|
|
|
org.openlcb.Message msg;
|
|
msg = new org.openlcb.ProducerIdentifiedMessage(new NodeID(), new OlcbAddress(t.getNotLitEventId(), null).toEventID(), org.openlcb.EventState.Invalid);
|
|
t.handleMessage(msg);
|
|
Assert.assertTrue("lit true", t.getLit()); // default
|
|
msg = new org.openlcb.ProducerIdentifiedMessage(new NodeID(), new OlcbAddress(t.getNotLitEventId(), null).toEventID(), org.openlcb.EventState.Unknown);
|
|
t.handleMessage(msg);
|
|
Assert.assertTrue("lit true", t.getLit());
|
|
msg = new org.openlcb.ProducerIdentifiedMessage(new NodeID(), new OlcbAddress("FF.2.3.4.5.6.7.2", null).toEventID(), org.openlcb.EventState.Valid); // wrong event
|
|
t.handleMessage(msg);
|
|
Assert.assertTrue("lit true", t.getLit());
|
|
msg = new org.openlcb.ProducerIdentifiedMessage(new NodeID(), new OlcbAddress(t.getNotLitEventId(), null).toEventID(), org.openlcb.EventState.Valid);
|
|
t.handleMessage(msg);
|
|
Assert.assertFalse("lit false", t.getLit());
|
|
|
|
msg = new org.openlcb.ProducerIdentifiedMessage(new NodeID(), new OlcbAddress(t.getLitEventId(), null).toEventID(), org.openlcb.EventState.Invalid);
|
|
t.handleMessage(msg);
|
|
Assert.assertFalse("lit false", t.getLit());
|
|
msg = new org.openlcb.ProducerIdentifiedMessage(new NodeID(), new OlcbAddress(t.getLitEventId(), null).toEventID(), org.openlcb.EventState.Unknown);
|
|
t.handleMessage(msg);
|
|
Assert.assertFalse("lit false", t.getLit());
|
|
msg = new org.openlcb.ProducerIdentifiedMessage(new NodeID(), new OlcbAddress("FF.2.3.4.5.6.7.1", null).toEventID(), org.openlcb.EventState.Valid); // wrong event
|
|
t.handleMessage(msg);
|
|
Assert.assertFalse("lit false", t.getLit());
|
|
msg = new org.openlcb.ProducerIdentifiedMessage(new NodeID(), new OlcbAddress(t.getLitEventId(), null).toEventID(), org.openlcb.EventState.Valid);
|
|
t.handleMessage(msg);
|
|
Assert.assertTrue("lit true", t.getLit());
|
|
|
|
Assert.assertEquals("none sent", 0, messages.size());
|
|
}
|
|
|
|
enum States2 { A, B }
|
|
@Test
|
|
public void testStateMachine2Setup() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
|
|
OlcbSignalMast.StateMachine<States2> machine = t.new StateMachine<>(connection, nodeID, States2.B);
|
|
|
|
Assert.assertEquals("starting state", States2.B, machine.getState());
|
|
|
|
machine.setEventForState(States2.A, "01.00.00.00.00.00.01.00");
|
|
machine.setEventForState(States2.B, "01.00.00.00.00.00.02.00");
|
|
|
|
Assert.assertEquals("Init sent for 2 events", 8, messages.size());
|
|
resetMessages(); // reset test message queue
|
|
|
|
Assert.assertEquals("A event", new EventID(new byte[]{1, 0, 0, 0, 0, 0, 1, 0}), machine.getEventIDForState(States2.A));
|
|
Assert.assertEquals("B event", new EventID(new byte[]{1, 0, 0, 0, 0, 0, 2, 0}), machine.getEventIDForState(States2.B));
|
|
|
|
machine.setState(States2.A);
|
|
Assert.assertEquals("still starting state", States2.B, machine.getState());
|
|
Assert.assertEquals("one sent", 1, messages.size());
|
|
|
|
machine.handleProducerConsumerEventReport( new ProducerConsumerEventReportMessage(nodeID, new EventID(new byte[]{2, 0, 0, 0, 0, 0, 1, 0})), null); // other eventID
|
|
Assert.assertEquals("still starting state", States2.B, machine.getState());
|
|
|
|
machine.handleProducerConsumerEventReport( new ProducerConsumerEventReportMessage(nodeID, new EventID(new byte[]{1, 0, 0, 0, 0, 0, 1, 0})), null); // A eventID
|
|
Assert.assertEquals("new state", States2.A, machine.getState());
|
|
}
|
|
|
|
@Test
|
|
public void testStateMachine2IdEvents() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
|
|
OlcbSignalMast.StateMachine<States2> machine = t.new StateMachine<>(connection, nodeID, States2.B);
|
|
|
|
machine.setEventForState(States2.A, "01.00.00.00.00.00.01.00");
|
|
machine.setEventForState(States2.B, "01.00.00.00.00.00.02.00");
|
|
|
|
Assert.assertEquals("Init sent for 2 events", 8, messages.size());
|
|
resetMessages(); // reset test message queue
|
|
|
|
machine.handleIdentifyEventsAddressed( new IdentifyEventsAddressedMessage(new NodeID(),
|
|
new NodeID()), null);
|
|
Assert.assertEquals("no reply if wrong address", 0, messages.size());
|
|
|
|
machine.handleIdentifyEventsAddressed( new IdentifyEventsAddressedMessage(new NodeID(),
|
|
nodeID),
|
|
null);
|
|
Assert.assertEquals("four sent", 4, messages.size());
|
|
// check by string comparison as a short cut
|
|
Assert.assertEquals("msg 0", "01.00.00.00.00.00 Consumer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(0).toString());
|
|
Assert.assertEquals("msg 1", "01.00.00.00.00.00 Producer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(1).toString());
|
|
Assert.assertEquals("msg 2", "01.00.00.00.00.00 Consumer Identified Unknown for EventID:01.00.00.00.00.00.01.00", messages.get(2).toString());
|
|
Assert.assertEquals("msg 3", "01.00.00.00.00.00 Producer Identified Unknown for EventID:01.00.00.00.00.00.01.00", messages.get(3).toString());
|
|
resetMessages(); // reset test message queue
|
|
|
|
machine.handleIdentifyEventsGlobal( new IdentifyEventsGlobalMessage(new NodeID()),
|
|
null);
|
|
Assert.assertEquals("four sent", 4, messages.size());
|
|
// check by string comparison as a short cut
|
|
Assert.assertEquals("msg 0", "01.00.00.00.00.00 Consumer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(0).toString());
|
|
Assert.assertEquals("msg 1", "01.00.00.00.00.00 Producer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(1).toString());
|
|
Assert.assertEquals("msg 2", "01.00.00.00.00.00 Consumer Identified Unknown for EventID:01.00.00.00.00.00.01.00", messages.get(2).toString());
|
|
Assert.assertEquals("msg 3", "01.00.00.00.00.00 Producer Identified Unknown for EventID:01.00.00.00.00.00.01.00", messages.get(3).toString());
|
|
resetMessages(); // reset test message queue
|
|
|
|
machine.handleIdentifyProducers( new IdentifyProducersMessage(new NodeID(), new EventID(new byte[]{11, 0, 0, 0, 0, 0, 2, 0})), null);
|
|
Assert.assertEquals("no reply", 0, messages.size());
|
|
|
|
machine.handleIdentifyProducers( new IdentifyProducersMessage(new NodeID(), new EventID(new byte[]{1, 0, 0, 0, 0, 0, 2, 0})), null);
|
|
Assert.assertEquals("one sent", 1, messages.size());
|
|
// check by string comparison as a short cut
|
|
Assert.assertEquals("reply", "01.00.00.00.00.00 Producer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(0).toString());
|
|
|
|
resetMessages(); // reset test message queue
|
|
|
|
machine.handleIdentifyConsumers( new IdentifyConsumersMessage(new NodeID(), new EventID(new byte[]{11, 0, 0, 0, 0, 0, 2, 0})), null);
|
|
Assert.assertEquals("no reply", 0, messages.size());
|
|
|
|
machine.handleIdentifyConsumers( new IdentifyConsumersMessage(new NodeID(), new EventID(new byte[]{1, 0, 0, 0, 0, 0, 2, 0})), null);
|
|
Assert.assertEquals("one sent", 1, messages.size());
|
|
// check by string comparison as a short cut
|
|
Assert.assertEquals("reply", "01.00.00.00.00.00 Consumer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(0).toString());
|
|
|
|
}
|
|
|
|
@Test
|
|
public void testStateMachineStringSetup() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
|
|
OlcbSignalMast.StateMachine<String> machine = t.new StateMachine<>(connection, nodeID, "B");
|
|
|
|
Assert.assertEquals("starting state", "B", machine.getState());
|
|
|
|
machine.setEventForState("A", "01.00.00.00.00.00.01.00");
|
|
machine.setEventForState("B", "01.00.00.00.00.00.02.00");
|
|
|
|
Assert.assertEquals("A event", new EventID(new byte[]{1, 0, 0, 0, 0, 0, 1, 0}), machine.getEventIDForState("A"));
|
|
Assert.assertEquals("B event", new EventID(new byte[]{1, 0, 0, 0, 0, 0, 2, 0}), machine.getEventIDForState("B"));
|
|
|
|
Assert.assertEquals("Init sent for 2 events", 8, messages.size());
|
|
resetMessages(); // reset test message queue
|
|
|
|
machine.setState("A");
|
|
Assert.assertEquals("still starting state", "B", machine.getState());
|
|
Assert.assertEquals("one sent", 1, messages.size());
|
|
|
|
machine.handleProducerConsumerEventReport( new ProducerConsumerEventReportMessage(nodeID, new EventID(new byte[]{2, 0, 0, 0, 0, 0, 1, 0})), null); // other eventID
|
|
Assert.assertEquals("still starting state", "B", machine.getState());
|
|
|
|
machine.handleProducerConsumerEventReport( new ProducerConsumerEventReportMessage(nodeID, new EventID(new byte[]{1, 0, 0, 0, 0, 0, 1, 0})), null); // A eventID
|
|
Assert.assertEquals("new state", "A", machine.getState());
|
|
}
|
|
|
|
@Test
|
|
public void testStateMachineStringIdEvents() {
|
|
OlcbSignalMast t = new OlcbSignalMast("MF$olm:AAR-1946:PL-1-high-abs($1)");
|
|
|
|
OlcbSignalMast.StateMachine<String> machine = t.new StateMachine<>(connection, nodeID, "B");
|
|
|
|
machine.setEventForState("A", "01.00.00.00.00.00.01.00");
|
|
machine.setEventForState("B", "01.00.00.00.00.00.02.00");
|
|
|
|
Assert.assertEquals("Init sent for 2 events", 8, messages.size());
|
|
resetMessages(); // reset test message queue
|
|
|
|
machine.handleIdentifyEventsAddressed( new IdentifyEventsAddressedMessage(new NodeID(),
|
|
new NodeID()), null);
|
|
Assert.assertEquals("no reply if wrong address", 0, messages.size());
|
|
|
|
machine.handleIdentifyEventsAddressed( new IdentifyEventsAddressedMessage(new NodeID(),
|
|
nodeID), null);
|
|
Assert.assertEquals("four sent", 4, messages.size());
|
|
// check by string comparison as a short cut
|
|
Assert.assertEquals("msg 0", "01.00.00.00.00.00 Consumer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(0).toString());
|
|
Assert.assertEquals("msg 1", "01.00.00.00.00.00 Producer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(1).toString());
|
|
Assert.assertEquals("msg 2", "01.00.00.00.00.00 Consumer Identified Unknown for EventID:01.00.00.00.00.00.01.00", messages.get(2).toString());
|
|
Assert.assertEquals("msg 3", "01.00.00.00.00.00 Producer Identified Unknown for EventID:01.00.00.00.00.00.01.00", messages.get(3).toString());
|
|
|
|
resetMessages();
|
|
|
|
machine.handleIdentifyProducers( new IdentifyProducersMessage(new NodeID(), new EventID(new byte[]{11, 0, 0, 0, 0, 0, 2, 0})), null);
|
|
Assert.assertEquals("no reply", 0, messages.size());
|
|
|
|
machine.handleIdentifyProducers( new IdentifyProducersMessage(new NodeID(), new EventID(new byte[]{1, 0, 0, 0, 0, 0, 2, 0})), null);
|
|
Assert.assertEquals("one sent", 1, messages.size());
|
|
// check by string comparison as a short cut
|
|
Assert.assertEquals("reply", "01.00.00.00.00.00 Producer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(0).toString());
|
|
|
|
resetMessages();
|
|
|
|
machine.handleIdentifyConsumers( new IdentifyConsumersMessage(new NodeID(), new EventID(new byte[]{11, 0, 0, 0, 0, 0, 2, 0})), null);
|
|
Assert.assertEquals("no reply", 0, messages.size());
|
|
|
|
machine.handleIdentifyConsumers( new IdentifyConsumersMessage(new NodeID(), new EventID(new byte[]{1, 0, 0, 0, 0, 0, 2, 0})), null);
|
|
Assert.assertEquals("one sent", 1, messages.size());
|
|
// check by string comparison as a short cut
|
|
Assert.assertEquals("reply", "01.00.00.00.00.00 Consumer Identified Unknown for EventID:01.00.00.00.00.00.02.00", messages.get(0).toString());
|
|
|
|
}
|
|
|
|
// from here down is testing infrastructure
|
|
private static OlcbSystemConnectionMemoScaffold memo;
|
|
static Connection connection;
|
|
static NodeID nodeID = new NodeID(new byte[]{1, 0, 0, 0, 0, 0});
|
|
static java.util.ArrayList<Message> messages;
|
|
|
|
private static void resetMessages(){
|
|
messages = new java.util.ArrayList<>();
|
|
}
|
|
|
|
@BeforeEach
|
|
public void setUp() {
|
|
resetMessages();
|
|
}
|
|
|
|
@BeforeAll
|
|
@SuppressWarnings("deprecation") // OlcbInterface(NodeID, Connection)
|
|
public static void preClassInit() {
|
|
JUnitUtil.setUp();
|
|
JUnitUtil.initInternalTurnoutManager();
|
|
nodeID = new NodeID(new byte[]{1, 0, 0, 0, 0, 0});
|
|
|
|
resetMessages();
|
|
connection = new AbstractConnection() {
|
|
@Override
|
|
public void put(Message msg, Connection sender) {
|
|
messages.add(msg);
|
|
}
|
|
};
|
|
|
|
memo = new OlcbSystemConnectionMemoScaffold(); // this self-registers as 'M'
|
|
memo.setProtocol(jmri.jmrix.can.ConfigurationManager.OPENLCB);
|
|
memo.setInterface(new OlcbInterface(nodeID, connection) {
|
|
@Override
|
|
public Connection getOutputConnection() {
|
|
return connection;
|
|
}
|
|
});
|
|
|
|
JUnitUtil.waitFor(()-> (!messages.isEmpty()),"Initialization Complete message");
|
|
}
|
|
|
|
@AfterEach
|
|
public void tearDown() {
|
|
}
|
|
|
|
@AfterAll
|
|
public static void postClassTearDown() {
|
|
if(memo != null && memo.getInterface() !=null ) {
|
|
memo.getInterface().dispose();
|
|
memo.get(OlcbEventNameStore.class).deregisterShutdownTask();
|
|
memo.dispose();
|
|
InstanceManager.getDefault(IdTagManager.class).dispose();
|
|
}
|
|
memo = null;
|
|
connection = null;
|
|
nodeID = null;
|
|
JUnitUtil.tearDown();
|
|
}
|
|
}
|