public PlainTransitionCollection(IPlainStateMachine <TState, TTrigger> stateMachine, IEqualityComparer <TState> stateComparer, IEqualityComparer <Transition <TState, TTrigger> > transitionEqualityComparer) { _transitions = new HashSet <Transition <TState, TTrigger> >(transitionEqualityComparer); _stateMachine = stateMachine; _stateComparer = stateComparer; }
public PlainStateBehaviourScheduler(IPlainStateMachine <TState, TTrigger> stateMachine, PlainStateCollection <TState, TTrigger> stateCollection, PlainTransitionCollection <TState, TTrigger> transitionCollection, PlainTransitionValidator <TState, TTrigger> transitionValidator, IEqualityComparer <TState> stateComparer, IEqualityComparer <TTrigger> triggerComparer) { _stateComparer = stateComparer; _triggerComparer = triggerComparer; _stateMachine = stateMachine; _states = stateCollection; _transitions = transitionCollection; _transitionValidator = transitionValidator; }
public void SetUp() { _stateMachine = NewStateMachine(); _stateId1 = NewStateId(); _stateId2 = NewStateId(); _stateId3 = NewStateId(); _stateId4 = NewStateId(); _stateId5 = NewStateId(); _trigger1 = NewTrigger(); _trigger2 = NewTrigger(); _trigger3 = NewTrigger(); _trigger4 = NewTrigger(); _trigger5 = NewTrigger(); _stateObject1 = Substitute.For <IState>(); _stateObject2 = Substitute.For <IState>(); _stateObject3 = Substitute.For <IState>(); _stateObject4 = Substitute.For <IState>(); _stateObject5 = Substitute.For <IState>(); _guardCondition1 = Substitute.For <IGuardCondition>(); _guardCondition2 = Substitute.For <IGuardCondition>(); _guardCondition3 = Substitute.For <IGuardCondition>(); _guardCondition4 = Substitute.For <IGuardCondition>(); _guardCondition5 = Substitute.For <IGuardCondition>(); _stateEventHandler1 = Substitute.For <IStateEventHandler>(); _stateEventHandler2 = Substitute.For <IStateEventHandler>(); _stateEventHandler3 = Substitute.For <IStateEventHandler>(); _stateEventHandler4 = Substitute.For <IStateEventHandler>(); _stateEventHandler5 = Substitute.For <IStateEventHandler>(); _event1 = Substitute.For <IEvent>(); _onBeforeStateChangesSubscriptor1 = Substitute.For <StateChanged <TState, TTrigger> >(); _onBeforeStateChangesSubscriptor2 = Substitute.For <StateChanged <TState, TTrigger> >(); _onBeforeStateChangesSubscriptor3 = Substitute.For <StateChanged <TState, TTrigger> >(); _onStateChangedSubscriptor1 = Substitute.For <StateChanged <TState, TTrigger> >(); _onStateChangedSubscriptor2 = Substitute.For <StateChanged <TState, TTrigger> >(); _onStateChangedSubscriptor3 = Substitute.For <StateChanged <TState, TTrigger> >(); _startCallback = Substitute.For <Action>(); _stopCallback = Substitute.For <Action>(); _updateCallback = Substitute.For <Action>(); _triggerCallback = Substitute.For <Action <bool> >(); _sendEventCallback = Substitute.For <Action <bool> >(); }
public PlainStateEventHandlerCollection(IPlainStateMachine <TState, TTrigger> stateMachine, IEqualityComparer <TState> stateComparer) { _stateComparer = stateComparer ?? throw new ArgumentNullException(nameof(stateComparer)); _stateMachine = stateMachine; _eventHandlers = new Dictionary <TState, List <IStateEventHandler> >(_stateComparer); }
public PlainTransitionValidator(IPlainStateMachine <TState, TTrigger> stateMachine, IEqualityComparer <Transition <TState, TTrigger> > transitionComparer) { _guardConditions = new Dictionary <Transition <TState, TTrigger>, List <IGuardCondition> >(transitionComparer); _stateMachine = stateMachine; }
public PlainStateCollection(IPlainStateMachine <TState, TTrigger> stateMachine, IEqualityComparer <TState> stateComparer) { _stateMachine = stateMachine; _stateComparer = stateComparer; }