예제 #1
0
        private async Task Roll(IPlayer player, bool a_noTest, model.task.delay.IAsyncDelay a_asyncDelay)
        {
            player.Roll();
            player.UpdateTotalScore();

            m_IView.DisplayRolledDices(player.GetPlayername(), player.GetHand(), player.CalculateScore(), player.GetTotalScore());

            await a_asyncDelay.Delay(TimeSpan.FromSeconds(2));

            if (player.IsPlayerWinner())
            {
                m_IView.DisplayWinner(player.GetPlayername(), player.GetTotalScore());

                await a_asyncDelay.Delay(TimeSpan.FromSeconds(5));

                if (a_noTest)
                {
                    await Start();
                }
            }
        }
예제 #2
0
        private async Task RollRemainingDicesAfterSave(IPlayer player, model.task.delay.IAsyncDelay a_asyncDelay)
        {
            if (player.IsMoreDicesToRoll())
            {
                player.Roll();
            }

            player.UpdateTotalScore();

            m_IView.DisplayRolledDices(player.GetPlayername(), player.GetHand(), player.CalculateScore(), player.GetTotalScore());

            await a_asyncDelay.Delay(TimeSpan.FromSeconds(2));

            player.Roll(); // Roll dices again, orelse same dice value will appear next round.
        }
예제 #3
0
 public async void Delay_Input5Milliseconds_SmokeTest()
 {
     await sut.Delay(TimeSpan.FromMilliseconds(5));
 }