Example #1
0
        public void ShouldGuardWhenFinished()
        {
            // Arrange
            MockCountdownTimerElapsedAction nextAction        = new MockCountdownTimerElapsedAction.Builder().Build();
            MockCountdownState mockCountdownState             = new MockCountdownState.Builder().Finished(Bool.True).Build();
            MockCountdownTimer mockCountdownTimer             = new MockCountdownTimer.Builder().CountdownState(mockCountdownState).Close().Build();
            CountdownTimerElapsedAction_FinishedGuard subject = new CountdownTimerElapsedAction_FinishedGuard(nextAction);

            // Act
            subject.Act(mockCountdownTimer);

            // Assert
            mockCountdownTimer.AssertCloseInvoked();
        }
Example #2
0
        public void ShouldNextActWhenNotFinished()
        {
            // Arrange
            MockCountdownTimerElapsedAction nextAction        = new MockCountdownTimerElapsedAction.Builder().Act().Build();
            MockCountdownState mockCountdownState             = new MockCountdownState.Builder().Finished(Bool.False).Build();
            MockCountdownTimer mockCountdownTimer             = new MockCountdownTimer.Builder().CountdownState(mockCountdownState).Build();
            CountdownTimerElapsedAction_FinishedGuard subject = new CountdownTimerElapsedAction_FinishedGuard(nextAction);

            // Act
            subject.Act(mockCountdownTimer);

            // Assert
            nextAction.AssertActInvokedWith(mockCountdownTimer);
        }
        public void ShouldGuardWhenLast()
        {
            // Arrange
            MockCountdownTimerElapsedAction nextAction    = new MockCountdownTimerElapsedAction.Builder().Build();
            MockCountdownState mockCountdownState         = new MockCountdownState.Builder().Last(Bool.True).Build();
            MockCountdownTimer mockCountdownTimer         = new MockCountdownTimer.Builder().CountdownState(mockCountdownState).Invoke().Build();
            CountdownTimerElapsedAction_LastGuard subject = new CountdownTimerElapsedAction_LastGuard(nextAction);

            // Act
            subject.Act(mockCountdownTimer);

            // Assert
            mockCountdownTimer.AssertInvokeInvokedWith(TimerProgress.Last);
        }
        public void CountdownState_ShouldReturnAccurateState()
        {
            //Arrange
            //Arrange
            MockCountdownState mockCountdownState = new MockCountdownState.Builder().Build();
            MockCountdownTimerElapsedAction mockCountdownTimerElapsedAction = new MockCountdownTimerElapsedAction.Builder().Build();
            MockTimerBookEnd     mockTimerBookEnd     = new MockTimerBookEnd.Builder().Build();
            MockCountdownTracker mockCountdownTracker = new MockCountdownTracker.Builder().CountdownState(mockCountdownState).Build();
            CountdownTimer       subject = new TestCountdownTimer(mockCountdownTimerElapsedAction, mockTimerBookEnd, mockCountdownTracker);

            //Act
            ICountdownState actual = subject.CountdownState();

            //Assert
            actual.Should().Be(mockCountdownState);
        }