Ejemplo n.º 1
0
        public void HierarchyWhenDefiningAStateAsItsOwnSuperStateThenAnExceptionIsThrown()
        {
            var testee = new StateDefinition <States, Events>(States.A);

            Action action = () => testee.SuperStateModifiable = testee;

            action
            .Should()
            .Throw <ArgumentException>()
            .WithMessage(ExceptionMessages.StateCannotBeItsOwnSuperState(testee.ToString()));
        }
Ejemplo n.º 2
0
        public void HierarchyWhenDefiningAStateAAndAssigningAnInitialStateThatDoesntHaveStateAAsSuperStateThenAnExceptionIsThrown()
        {
            var testee = new StateDefinition <States, Events>(States.A);

            var initialState = A.Fake <StateDefinition <States, Events> >();

            initialState.SuperStateModifiable = A.Fake <StateDefinition <States, Events> >();

            Action action = () => testee.InitialStateModifiable = initialState;

            action
            .Should()
            .Throw <ArgumentException>()
            .WithMessage(StatesExceptionMessages.StateCannotBeTheInitialStateOfSuperStateBecauseItIsNotADirectSubState(initialState.ToString(), testee.ToString()));
        }