Exemple #1
0
        public void ExecuteWithoutChildrenTest(State state)
        {
            //Arrange
            Quest quest = QuestHelper.CreateQuest();

            quest.Progress = 0;
            quest.State    = state;

            RecountProgressQuestCommand command = new RecountProgressQuestCommand();

            //Act
            bool result = command.Execute(quest);

            //Assert
            Assert.IsTrue(result);
            Assert.AreEqual(state == State.Done ? 1 : 0, quest.Progress);
        }
Exemple #2
0
        public void UndoTest()
        {
            //Arrange
            Quest quest = QuestHelper.CreateQuest();

            quest.State    = State.Done;
            quest.Progress = 0;

            RecountProgressQuestCommand command = new RecountProgressQuestCommand();

            //Act
            bool executeResult = command.Execute(quest);
            bool undoResult    = command.Undo(quest);

            //Assert
            Assert.IsTrue(executeResult);
            Assert.IsTrue(undoResult);
            Assert.AreEqual(0, quest.Progress);
        }
Exemple #3
0
        public void ExecuteWithChildrenTest(double[] progresses)
        {
            //Arrange
            Quest quest = QuestHelper.CreateQuest();

            quest.Progress = 0;
            quest.Children = new List <Quest>();
            foreach (double prog in progresses)
            {
                quest.Children.Add(new Quest {
                    Progress = prog
                });
            }

            RecountProgressQuestCommand command = new RecountProgressQuestCommand();

            //Act
            bool result = command.Execute(quest);

            //Assert
            Assert.IsTrue(result);
            Assert.AreEqual(progresses.Average(), quest.Progress);
        }