Class PublisherTest

java.lang.Object
org.opentrafficsim.sim0mq.publisher.PublisherTest
All Implemented Interfaces:
Serializable, DSOLModel<Duration,org.opentrafficsim.core.dsol.OtsSimulatorInterface>, org.opentrafficsim.core.dsol.OtsModelInterface

public class PublisherTest extends Object implements org.opentrafficsim.core.dsol.OtsModelInterface
Unit tests. This requires half of OTS in the imports because it sets up a simulation and runs that for a couple of seconds.

Copyright (c) 2020-2023 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.

Author:
Peter Knoppers
See Also:
  • Field Details

    • lastResult

      Object[] lastResult
      Storage for the last result submitted to the ReturnWrapper.
    • TEST_NETWORK_XML

      static final String TEST_NETWORK_XML
      The test network.
      See Also:
  • Constructor Details

    • PublisherTest

      public PublisherTest()
  • Method Details

    • testPublisher

      public void testPublisher() throws RemoteException, org.opentrafficsim.core.network.NetworkException, org.opentrafficsim.core.geometry.OtsGeometryException, SimRuntimeException, NamingException, Sim0MQException, SerializationException
      Test the Publisher class.
      Throws:
      RemoteException - when that happens this test has failed
      org.opentrafficsim.core.network.NetworkException - if that happens uncaught; this test has failed
      org.opentrafficsim.core.geometry.OtsGeometryException - if that happens uncaught; this test has failed
      NamingException - on context error
      SimRuntimeException - on DSOL error
      SerializationException - - when encoding an error message fails
      Sim0MQException - - when encoding an error message fails
    • checkLastResult

      public void checkLastResult(String expectedText)
      Verify that lastResult is not null, an Object array of length 1 and the one and only element is a String with the expected text.
      Parameters:
      expectedText - String; the expected text
    • constructModel

      public void constructModel() throws SimRuntimeException
      Specified by:
      constructModel in interface DSOLModel<Duration,org.opentrafficsim.core.dsol.OtsSimulatorInterface>
      Throws:
      SimRuntimeException
    • getSimulator

      public final org.opentrafficsim.core.dsol.OtsSimulatorInterface getSimulator()
      Specified by:
      getSimulator in interface DSOLModel<Duration,org.opentrafficsim.core.dsol.OtsSimulatorInterface>
    • getInputParameterMap

      public final InputParameterMap getInputParameterMap()
      Specified by:
      getInputParameterMap in interface DSOLModel<Duration,org.opentrafficsim.core.dsol.OtsSimulatorInterface>
    • getOutputStatistics

      public final List<StatisticsInterface<Duration>> getOutputStatistics()
      Specified by:
      getOutputStatistics in interface DSOLModel<Duration,org.opentrafficsim.core.dsol.OtsSimulatorInterface>
    • getNetwork

      public final org.opentrafficsim.core.network.Network getNetwork()
      Specified by:
      getNetwork in interface org.opentrafficsim.core.dsol.OtsModelInterface
    • getShortName

      public final String getShortName()
      Specified by:
      getShortName in interface org.opentrafficsim.core.dsol.OtsModelInterface
    • getDescription

      public final String getDescription()
      Specified by:
      getDescription in interface org.opentrafficsim.core.dsol.OtsModelInterface
    • setStreamInformation

      public void setStreamInformation(StreamInformation streamInformation)
      Specified by:
      setStreamInformation in interface DSOLModel<Duration,org.opentrafficsim.core.dsol.OtsSimulatorInterface>
    • getStreamInformation

      public StreamInformation getStreamInformation()
      Specified by:
      getStreamInformation in interface DSOLModel<Duration,org.opentrafficsim.core.dsol.OtsSimulatorInterface>
    • readStringFromURL

      public static String readStringFromURL(URL url) throws IOException
      Open an URL, read it and store the contents in a string. Adapted from https://stackoverflow.com/questions/4328711/read-url-to-string-in-few-lines-of-java-code
      Parameters:
      url - URL; the URL
      Returns:
      String
      Throws:
      IOException - when reading the file fails