コード例 #1
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_SilentFlag_MakesTaskAddingSilent()
        {
            TaskManTester tester = new TaskManTester();

            tester.RunWithCommand("add --silent Remember the milk");

            Assert.That(string.IsNullOrWhiteSpace(tester.Output));
        }
コード例 #2
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_TaskMan_SplitsOutputMessagesIntoLines()
        {
            TaskManTester tester = new TaskManTester();

            tester.RunWithCommand("add " + "ABCDE ".Replicate(10000));

            Assert.That(tester.Output.Split('\n').HasAtLeastTwoElements());
        }
コード例 #3
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_Delete_DeletesTasks()
        {
            TaskManTester tester = new TaskManTester();

            tester.AddThreeTasks();
            tester.RunWithCommand("delete --all");

            Assert.IsEmpty(tester.SavedTasks);
        }
コード例 #4
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_TaskMan_DoesNotPrintStackTrace_When_NoVerboseFlag()
        {
            TaskManTester tester = new TaskManTester();

            tester.RunWithCommand("self-destruct");

            Assert.That(
                !tester.Errors.ContainsFormat(Messages.ExceptionStackTrace));
        }
コード例 #5
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_VerboseFlag_IncreasesErrorVerbosity()
        {
            TaskManTester tester = new TaskManTester();

            tester.RunWithCommand("self-destruct --verbose");

            Assert.That(
                tester.Errors.ContainsFormat(Messages.ExceptionStackTrace));
        }
コード例 #6
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_TaskMan_OutputsSimilarCommandOnTypo()
        {
            TaskManTester tester = new TaskManTester();

            tester.RunWithCommand("shom");

            Assert.That(tester.Errors.ContainsFormat(Messages.DidYouMean));
            Assert.That(tester.Errors, Does.Contain("show").IgnoreCase);
        }
コード例 #7
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_TaskMan_OutputsPossibleCommandsOnAmbiguity()
        {
            TaskManTester tester = new TaskManTester();

            tester.RunWithCommand("s");

            Assert.That(
                tester.Errors.ContainsFormat(Messages.MoreThanOneCommandMatchesInput));
        }
コード例 #8
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_FormatFlag_WorksWithXMLFormat()
        {
            TaskManTester tester = new TaskManTester();

            tester.AddThreeTasks();
            tester.RunWithCommand("show --format xml");

            Assert.That(true);
        }
コード例 #9
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_PriorityFlag_SetsPriority_When_AddingNewTask()
        {
            TaskManTester tester = new TaskManTester();

            tester.RunWithCommand("add -p Critical first");

            Assert.That(
                tester.SavedTasks.Single().Priority,
                Is.EqualTo(Priority.Critical));
        }
コード例 #10
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_Update_UpdatesDescription()
        {
            TaskManTester tester = new TaskManTester();

            tester.AddThreeTasks();
            tester.RunWithCommand("update --all description NEW");

            Assert.That(
                tester.SavedTasks,
                Is.All.Matches <Task>(task => task.Description == "NEW"));
        }
コード例 #11
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_Add_AddsTask()
        {
            TaskManTester tester = new TaskManTester();

            tester.RunWithCommand("add Remember the milk");

            Assert.IsNotEmpty(tester.SavedTasks);
            Assert.That(
                tester.SavedTasks.First().Description,
                Is.EqualTo("Remember the milk"));
        }
コード例 #12
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_Complete_CompletesTasks()
        {
            TaskManTester tester = new TaskManTester();

            tester.AddThreeTasks();
            tester.RunWithCommand("complete --all");

            Assert.That(
                tester.SavedTasks,
                Is.All.Matches <Task>(task => task.IsFinished));
        }
コード例 #13
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_InteractiveFlag_AllowsTheUserToConfirmOperation()
        {
            TaskManTester tester = new TaskManTester();

            tester.AddThreeTasks();
            tester.Input = "yes";

            tester.RunWithCommand("delete --all --interactive");

            Assert.That(tester.SavedTasks, Is.Empty);
        }
コード例 #14
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_TaskMan_RequiresExplicitFilteringOnDelete()
        {
            TaskManTester tester = new TaskManTester();

            tester.AddThreeTasks();

            tester.RunWithCommand("delete");

            Assert.That(tester.SavedTasks.Any());
            Assert.That(
                tester.Errors.ContainsFormat(Messages.NoFilterConditionsUseAllIfIntended));
        }
コード例 #15
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_LicenseFlag_OutputsLicense()
        {
            TaskManTester tester = new TaskManTester();

            const string expectedSubstring = "GNU GENERAL PUBLIC LICENSE";

            tester.RunWithCommand("--license");

            Assert.That(
                tester.Output,
                Contains.Substring(expectedSubstring));
        }
コード例 #16
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_VersionFlag_OutputsVersion()
        {
            TaskManTester tester = new TaskManTester();

            const string expectedSubstring = "version";

            tester.RunWithCommand("--version");

            Assert.That(
                tester.Output,
                Contains.Substring(expectedSubstring));
        }
コード例 #17
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_InteractiveFlag_AllowsTheUserToAbortOperation()
        {
            TaskManTester tester = new TaskManTester();

            tester.AddThreeTasks();
            tester.Input = "no";

            tester.RunWithCommand("delete --all --interactive");

            Assert.That(() => tester.Output.ContainsFormat(Messages.Cancelled));
            Assert.That(tester.SavedTasks.Count, Is.EqualTo(3));
        }
コード例 #18
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_LimitFlag_HasLowerPriorityThanSkipFlag()
        {
            TaskManTester tester = new TaskManTester();

            tester.AddThreeTasks();
            tester.RunWithCommand("show --limit 1 --skip 2");

            Assert.That(
                tester.Output,
                Does.Not.Contain("first")
                .And.Not.Contain("second")
                .And.Contains("third"));
        }
コード例 #19
0
ファイル: UnitTests.cs プロジェクト: wh1t3cAt1k/taskman
        public void Test_Renumber_RenumbersTasksInGivenOrder()
        {
            TaskManTester tester = new TaskManTester();

            tester.RunWithCommands(
                "add 1",
                "add 2",
                "add 3");

            Assert.That(
                tester.SavedTasks.Select(t => t.Description),
                Is.EquivalentTo(new[] { "1", "2", "3" }));

            tester.RunWithCommand("renumber --orderby id-");

            Assert.That(
                tester.SavedTasks.Select(t => t.Description),
                Is.EquivalentTo(new[] { "3", "2", "1" }));
        }