public void ShouldAct()
        {
            //Arrange
            MockMainForm                  mockMainForm       = new MockMainForm.Builder().Build();
            MockCountdownTimer            mockCountdownTimer = new MockCountdownTimer.Builder().Build();
            MockCountdownTimerStartAction nextAction         = new MockCountdownTimerStartAction.Builder().Act().Build();
            ShortBreakTimerStartAction    subject            = new PrivateCtor <ShortBreakTimerStartAction>(nextAction);

            //Act
            subject.Act(mockMainForm, mockCountdownTimer);

            //Assert
            nextAction.AssertActInvokedWith(mockMainForm, mockCountdownTimer);
        }
        public void ShouldStartTimer()
        {
            //Arrange
            MockMainForm                         mockMainForm       = new MockMainForm.Builder().Build();
            MockCountdownTimer                   mockCountdownTimer = new MockCountdownTimer.Builder().Start().Build();
            MockCountdownTimerStartAction        nextAction         = new MockCountdownTimerStartAction.Builder().Act().Build();
            CountdownTimerStartAction_StartTimer subject            = new CountdownTimerStartAction_StartTimer(nextAction);


            //Act
            subject.Act(mockMainForm, mockCountdownTimer);

            //Assert
            mockCountdownTimer.AssertStartInvoked();
            nextAction.AssertActInvokedWith(mockMainForm, mockCountdownTimer);
        }
Esempio n. 3
0
        public void ShouldInvokeActionGivenStart()
        {
            //Arrange
            MockMainForm                   mockMainForm       = new MockMainForm.Builder().Build();
            MockCountdownTimer             mockCountdownTimer = new MockCountdownTimer.Builder().Build();
            MockCountdownTimerStartAction  startAction        = new MockCountdownTimerStartAction.Builder().Act().Build();
            MockCountdownTimerUpdateAction updateAction       = new MockCountdownTimerUpdateAction.Builder().Build();

            PomodoroPeriod subject = new TestPomodoroPeriod(mockCountdownTimer, startAction, updateAction);

            //Act
            subject.SetMainForm(mockMainForm);
            subject.Start();

            //Assert
            startAction.AssertActInvokedWith(mockMainForm, mockCountdownTimer);
        }
Esempio n. 4
0
        public void ShouldInvokeUpdateOnTrigger()
        {
            //Arrange
            MockCountdownTime              mockCountdownTime  = new MockCountdownTime.Builder().Build();
            MockMainForm                   mockMainForm       = new MockMainForm.Builder().Build();
            MockCountdownTimer             mockCountdownTimer = new MockCountdownTimer.Builder().Build();
            MockCountdownTimerStartAction  startAction        = new MockCountdownTimerStartAction.Builder().Build();
            MockCountdownTimerUpdateAction updateAction       = new MockCountdownTimerUpdateAction.Builder().Act().Build();
            PomodoroPeriod                 subject            = new TestPomodoroPeriod(mockCountdownTimer, startAction, updateAction);

            subject.SetMainForm(mockMainForm);

            //Act
            mockCountdownTimer.TriggerElapsed(mockCountdownTime, TimerProgress.Last);

            //Assert
            updateAction.AssertActInvokedWith(mockMainForm, mockCountdownTime, TimerProgress.Last);
        }
        public void ShouldDisableLongBreak()
        {
            //Arrange
            MockEnabled                   mockEnabled               = new MockEnabled.Builder().Disable().Build();
            MockMainForm                  mockMainForm              = new MockMainForm.Builder().LongBreakStartEnabled(mockEnabled).Build();
            MockCountdownTimer            mockCountdownTimer        = new MockCountdownTimer.Builder().Build();
            MockCountdownTimerStartAction nextAction                = new MockCountdownTimerStartAction.Builder().Act().Build();
            CountdownTimerStartAction_DisableLongBreakStart subject = new CountdownTimerStartAction_DisableLongBreakStart(nextAction);


            //Act
            subject.Act(mockMainForm, mockCountdownTimer);

            //Assert
            mockEnabled.Disable();
            mockMainForm.AssertLongBreakStartEnabledInvoked();
            nextAction.AssertActInvokedWith(mockMainForm, mockCountdownTimer);
        }