assertTrue(exec.get().isComplete());
}
@Ignore("TODO")
@Test public void contextOverridesAndSerialization() throws Throwable {
SemaphoreStep step = new SemaphoreStep();
BlockSemaphoreStep block = new BlockSemaphoreStep();
final AtomicReference<FlowExecution> exec = new AtomicReference<FlowExecution>();
exec.set(new STMFlowDefinition(Arrays.<State>asList(new BlockState("block", STMExecution.END, block, "step"), new StepState("step", STMExecution.END, step))).create(new OwnerImpl(exec, tmp), Collections.<Action>emptyList()));
exec.get().start();
block.startBlock(new Thing(17));
Thing t = step.getContext().get(Thing.class);
assertNotNull(t);
assertEquals(17, t.number);
exec.set(reserialize(exec.get()));
step = reserialize(step);
block = reserialize(block);
t = step.getContext().get(Thing.class);
assertNotNull(t);
assertEquals(17, t.number);
step.success(null);
assertEquals(null, block.waitForBlock());
block.finishSuccess(null);
}