Пример #1
0
async def test_change_state():
    fsm1 = await fsm.create_controller(dict(), 'foo', 1, Start, fsm.NullTracer,
                                       fsm.NullTracer)
    await fsm1.inboxes['default'].put(Input1())
    await fsm1.inboxes['default'].put(Input2())
    await fsm1.inboxes['default'].put(messages.Shutdown())
    await fsm1.receive_messages()
    assert fsm1.state is A
Пример #2
0
async def test_channels_with_queue():
    fsm1 = await fsm.create_controller(dict(), 'foo', 1, Start, fsm.NullTracer,
                                       fsm.NullTracer)
    fsm2 = await fsm.create_controller(dict(), 'foo', 2, Start, fsm.NullTracer,
                                       fsm.NullTracer)
    fsm1.outboxes['default'] = fsm.Channel(fsm1, fsm2, fsm.NullTracer, Queue())
    await fsm1.inboxes['default'].put(Input3())
    await fsm1.inboxes['default'].put(messages.Shutdown())
    await fsm1.receive_messages()
    assert fsm1.state is Start
Пример #3
0
async def test_change_state_instrumented():
    settings.instrumented = True
    try:
        fsm1 = await fsm.create_controller(dict(), 'foo', 1, Start,
                                           fsm.NullTracer, fsm.NullTracer)
        await fsm1.inboxes['default'].put(Input1())
        await fsm1.inboxes['default'].put(Input2())
        await fsm1.inboxes['default'].put(messages.Shutdown())
        await fsm1.receive_messages()
        assert fsm1.state is A
    finally:
        settings.instrumented = False
Пример #4
0
async def test_channels_instrumented():
    settings.instrumented = True
    try:
        fsm1 = await fsm.create_controller(dict(), 'foo', 1, Start,
                                           fsm.NullTracer, fsm.NullTracer)
        fsm2 = await fsm.create_controller(dict(), 'foo', 2, Start,
                                           fsm.NullTracer, fsm.NullTracer)
        fsm1.outboxes['default'] = fsm.Channel(fsm1, fsm2, fsm.NullTracer)
        await fsm1.inboxes['default'].put(Input3())
        await fsm1.inboxes['default'].put(messages.Shutdown())
        await fsm1.receive_messages()
        assert fsm1.state is Start
    finally:
        settings.instrumented = False