@Test
public void testStep() {

  Step step = new Step.Factory((origin) -> new MockExceptionWitness(eventBus, origin),
      MockTimer.MOCK_FACTORY)
      .create(additionMeta);
  Socket<Double> a = (Socket<Double>) step.getInputSockets().get(0);
  Socket<Double> b = (Socket<Double>) step.getInputSockets().get(1);
  Socket<Double> c = (Socket<Double>) step.getOutputSockets().get(0);
  a.setValue(1234.0);
  b.setValue(5678.0);
  step.runPerformIfPossible();
  assertEquals("Step did not perform correctly", (Double) (1234.0 + 5678.0), c.getValue().get());
  eventBus.unregister(step);
}