コード例 #1
0
        private void OnTaskCommandResultCreated(CommandResultDto obj)
        {
            _dispatcher.Current.BeginInvoke(new Action(() =>
            {
                if (!_executions.TryGetValue(obj.TaskExecutionId, out var execution))
                {
                    return;
                }

                if (execution.Results == null)
                {
                    execution.Results = new ObservableCollection <ICommandStatusViewModel>();
                }
                else
                {
                    var existingResult = execution.Results.FirstOrDefault(x => x.CommandResultId == obj.CommandResultId);
                    if (existingResult != null)
                    {
                        execution.Results.Remove(existingResult);
                        _results.Remove(existingResult.CommandResultId);
                    }
                }

                var result = new CommandResultViewModel(obj);

                _results.Add(result.CommandResultId, result);
                execution.Results.Add(result);
            }));
        }
コード例 #2
0
        public void TestActivateWhenDisabledThenDonotActivate()
        {
            //Assign
            CommandResultViewModel viewModel = new CommandResultViewModel("aa", false, true);

            //Act
            viewModel.Activate(100);

            //Assert
            Assert.True(!viewModel.IsActivated);
        }
コード例 #3
0
        public void TestActivateWhenDisabledThenDonotActivate()
        {
            //Assign
            CommandResultViewModel viewModel = new CommandResultViewModel("aa", false, true);

            //Act
            viewModel.Activate(100);

            //Assert
            Assert.True(!viewModel.IsActivated);
        }
コード例 #4
0
        public void TestSubstractScoreCommandWhenExecutedThenScoreSubstractedOrNil()
        {
            //Assign
            CommandResultViewModel viewModel = new CommandResultViewModel("aa");
            int       prevScore = viewModel.Score;
            const int cost      = 999;

            //Act
            viewModel.SubstractScoreCommand.Execute(cost);

            //Assert
            Assert.True(viewModel.Score == prevScore - cost);
        }
コード例 #5
0
        public void TestAddScoreCommandWhenExecutedThenScoreAdded()
        {
            //Assign
            CommandResultViewModel viewModel = new CommandResultViewModel("aa");
            int       prevScore = viewModel.Score;
            const int cost      = 999;

            //Act
            viewModel.AddScoreCommand.Execute(cost);

            //Assert
            Assert.True(viewModel.Score == prevScore + cost);
        }
コード例 #6
0
        public void TestSubstractScoreCommandWhenExecutedThenScoreSubstractedOrNil()
        {
            //Assign
            CommandResultViewModel viewModel = new CommandResultViewModel("aa");
            int prevScore = viewModel.Score;
            const int cost = 999;

            //Act
            viewModel.SubstractScoreCommand.Execute(cost);

            //Assert
            Assert.True(viewModel.Score == prevScore - cost);
        }
コード例 #7
0
        public void TestAddScoreCommandWhenExecutedThenScoreAdded()
        {
            //Assign
            CommandResultViewModel viewModel = new CommandResultViewModel("aa");
            int prevScore = viewModel.Score;
            const int cost = 999;

            //Act
            viewModel.AddScoreCommand.Execute(cost);

            //Assert
            Assert.True(viewModel.Score == prevScore + cost);
        }
コード例 #8
0
        public void TestWhenSuperRoundMessageTriggeredThenStayOnlyTopThreeCommands()
        {
            //Assign
            CommandResultsViewModel viewModel = new CommandResultsViewModel();

            viewModel.InitializeCommands(5);
            for (int index = 0; index < viewModel.CommandResults.Count; index++)
            {
                CommandResultViewModel command = viewModel.CommandResults[index];
                command.AddScore(index + 1);
            }

            //Act
            Messenger.Default.Send(new SupperRoundStartedMessage());

            //Assert
            Assert.True(viewModel.CommandResults.Count(rec => !rec.IsDisabled) == 3);
            Assert.True(viewModel.IsScoreCanbeChanged);
        }
コード例 #9
0
 public SubstractScoreCommand(CommandResultViewModel commandResultViewModel)
     : base(commandResultViewModel)
 {
 }
コード例 #10
0
 protected override void ChangeScore(int count)
 {
     CommandResultViewModel.SubstractScore(count);
 }
コード例 #11
0
 public AddScoreCommand(CommandResultViewModel commandResultViewModel)
     : base(commandResultViewModel)
 {
 }
コード例 #12
0
 protected override void ChangeScore(int count)
 {
     CommandResultViewModel.AddScore(count);
     Messenger.Default.Send(new UnloadQuestionMessage());
 }
コード例 #13
0
 public AddScoreCommand(CommandResultViewModel commandResultViewModel)
     : base(commandResultViewModel)
 {
 }
コード例 #14
0
 public SubstractScoreCommand(CommandResultViewModel commandResultViewModel)
     : base(commandResultViewModel)
 {
 }
コード例 #15
0
 protected ChangeScoreCommand(CommandResultViewModel commandResultViewModel)
 {
     CommandResultViewModel = commandResultViewModel;
 }