示例#1
0
    def test_composite_statechart_finished(self):
        statechart = Statechart(name='statechart')
        init = InitialState(statechart)
        final = FinalState(statechart)

        composite = CompositeState(name='composite', context=statechart)
        composite_init = InitialState(composite)
        composite_default = State(name='composite_default', context=composite)
        composite_final = FinalState(composite)

        finish = Event('finish')

        Transition(start=init, end=composite)
        Transition(start=composite_init, end=composite_default)
        Transition(start=composite_default, end=composite_final, event=finish)
        Transition(start=composite, end=final)

        statechart.start()

        assert statechart.is_active('composite')
        assert statechart.is_active('composite_default')
        assert not statechart.is_finished()

        statechart.dispatch(finish)

        assert statechart.is_finished()
示例#2
0
    def test_composite_statechart_finished(self):
        statechart = Statechart(name="statechart")
        init = InitialState(statechart)
        final = FinalState(statechart)

        composite = CompositeState(name="composite", context=statechart)
        composite_init = InitialState(composite)
        composite_default = State(name="composite_default", context=composite)
        composite_final = FinalState(composite)

        finish = Event("finish")

        Transition(start=init, end=composite)
        Transition(start=composite_init, end=composite_default)
        Transition(start=composite_default, end=composite_final, event=finish)
        Transition(start=composite, end=final)

        statechart.start()

        assert statechart.is_active("composite")
        assert statechart.is_active("composite_default")
        assert not statechart.is_finished()

        statechart.dispatch(finish)

        assert statechart.is_finished()
示例#3
0
    def test_simple_statechart_finished(self):
        statechart = Statechart(name='statechart')
        init = InitialState(statechart)
        default = State(name='default', context=statechart)
        final = FinalState(statechart)

        finish = Event('finish')

        Transition(start=init, end=default)
        Transition(start=default, end=final, event=finish)
        statechart.start()

        assert statechart.is_active('default')
        assert not statechart.is_finished()

        statechart.dispatch(finish)

        assert statechart.is_finished()
示例#4
0
    def test_simple_statechart_finished(self):
        statechart = Statechart(name="statechart")
        init = InitialState(statechart)
        default = State(name="default", context=statechart)
        final = FinalState(statechart)

        finish = Event("finish")

        Transition(start=init, end=default)
        Transition(start=default, end=final, event=finish)
        statechart.start()

        assert statechart.is_active("default")
        assert not statechart.is_finished()

        statechart.dispatch(finish)

        assert statechart.is_finished()