Exemple #1
0
    def test_add_dep10(self):
        """
        The text ID shown after adding and after an 'ls' must be equal."
        By appending the parent's contexts, the textual ID may change.
        """
        config("test/data/todolist-uid-contexts.conf")

        # pass identitiy function to for writing output, we're not interested
        # in this output
        command = AddCommand.AddCommand(["Foo @Context"], self.todolist,
                                        lambda t: t, self.error)
        command.execute()

        command = AddCommand.AddCommand(["Bar before:2a2"], self.todolist,
                                        self.out, self.error)
        command.execute()

        command = ListCommand.ListCommand(["Bar"], self.todolist, self.out,
                                          self.error)
        command.execute()

        self.assertEqual(
            self.output,
            "|wb3| {today} Bar p:1 @Context\n|wb3| {today} Bar @Context\n".
            format(today=self.today))
Exemple #2
0
    def test_add_dep3(self):
        command = AddCommand.AddCommand(["Foo"], self.todolist)
        command.execute()

        command = AddCommand.AddCommand(["Bar after:1"], self.todolist,
                                        self.out, self.error)
        command.execute()

        self.assertEqual(
            self.todolist.todo(1).source(), self.today + " Foo p:1")
        self.assertEqual(
            self.todolist.todo(2).source(), self.today + " Bar id:1")
        self.assertEqual(self.errors, "")
Exemple #3
0
    def add_parentsof_helper(self, p_tag):
        command = AddCommand.AddCommand(["Foo"], self.todolist, self.out,
                                        self.error)
        command.execute()

        command = AddCommand.AddCommand(["Bar before:1"], self.todolist,
                                        self.out, self.error)
        command.execute()

        command = AddCommand.AddCommand(["Baz {}:2".format(p_tag)],
                                        self.todolist, self.out, self.error)
        command.execute()

        self.assertTrue(self.todolist.todo(3).has_tag('p', '1'))
Exemple #4
0
    def test_add_dep08(self):
        config("test/data/todolist-uid.conf")

        command = AddCommand.AddCommand(["Foo"], self.todolist, self.out,
                                        self.error)
        command.execute()

        command = AddCommand.AddCommand(["Bar after:7ui"], self.todolist,
                                        self.out, self.error)
        command.execute()

        self.assertEqual(self.todolist.todo('7ui').source(),
                         "{} Foo p:1".format(self.today))
        self.assertEqual(self.todolist.todo('8to').source(),
                         "{} Bar id:1".format(self.today))
Exemple #5
0
    def test_add_empty(self):
        command = AddCommand.AddCommand([], self.todolist, self.out,
                                        self.error)
        command.execute()

        self.assertEqual(self.output, "")
        self.assertEqual(self.errors, command.usage() + "\n")
Exemple #6
0
    def test_add_from_stdin(self):
        command = AddCommand.AddCommand(["-f", "-"], self.todolist, self.out,
                                        self.error)
        command.execute()

        self.assertEqual(self.output, u"|  1| {tod} Fo\u00f3 due:{tod} id:1\n|  2| {tod} B\u0105r p:1\n".format(tod=self.today))
        self.assertEqual(self.errors, "")
Exemple #7
0
    def test_add_unicode(self):
        command = AddCommand.AddCommand([u("Special \u25c4")], self.todolist,
                                        self.out, self.error)
        command.execute()

        self.assertEqual(self.output,
                         u("|  1| {} Special \u25c4\n").format(self.today))
        self.assertEqual(self.errors, "")
Exemple #8
0
    def test_help(self):
        command = AddCommand.AddCommand(["help"], self.todolist, self.out,
                                        self.error)
        command.execute()

        self.assertEqual(self.output, "")
        self.assertEqual(self.errors,
                         command.usage() + "\n\n" + command.help() + "\n")
Exemple #9
0
    def test_add_reldate1(self):
        command = AddCommand.AddCommand(["Foo due:today"], self.todolist,
                                        self.out, self.error)
        command.execute()

        self.assertEqual(self.todolist.todo(1).source(),
                         self.today + " Foo due:" + self.today)
        self.assertEqual(self.errors, "")
Exemple #10
0
    def test_add_priority4(self):
        command = AddCommand.AddCommand(["(C) Foo"], self.todolist, self.out,
                                        self.error)
        command.execute()

        self.assertEqual(self.todolist.todo(1).priority(), 'C')
        self.assertEqual(
            self.todolist.todo(1).source(), "(C) " + self.today + " Foo")
        self.assertEqual(self.errors, "")
Exemple #11
0
    def test_add_priority3(self):
        command = AddCommand.AddCommand(["Fo(C)o"], self.todolist, self.out,
                                        self.error)
        command.execute()

        self.assertEqual(self.todolist.todo(1).priority(), None)
        self.assertEqual(
            self.todolist.todo(1).source(), self.today + " Fo(C)o")
        self.assertEqual(self.errors, "")
Exemple #12
0
    def test_add_reldate2(self):
        command = AddCommand.AddCommand(["Foo t:today due:today"],
                                        self.todolist, self.out, self.error)
        command.execute()

        result = "|  1| {} Foo t:{} due:{}\n".format(self.today, self.today,
                                                     self.today)
        self.assertEqual(self.output, result)
        self.assertEqual(self.errors, "")
Exemple #13
0
    def test_add_multiple_args(self):
        args = ["New", "todo"]
        command = AddCommand.AddCommand(args, self.todolist, self.out,
                                        self.error)
        command.execute()

        self.assertEqual(
            self.todolist.todo(1).source(), self.today + " New todo")
        self.assertEqual(self.errors, "")
Exemple #14
0
    def test_add_completed(self):
        """ Add a command that is completed automatically. """
        command = AddCommand.AddCommand(["x 2015-01-01 Already completed"],
            self.todolist, self.out, self.error)
        command.execute()

        self.assertTrue(self.todolist.todo(1).is_completed())
        self.assertEqual(self.output,
            "|  1| x 2015-01-01 {} Already completed\n".format(self.today))
        self.assertEqual(self.errors, "")
Exemple #15
0
    def test_add_file_not_found(self):
        command = AddCommand.AddCommand(
            ["-f", "test/data/AddCommandTest-from_Foo.txt"], self.todolist,
            self.out, self.error)
        command.execute()

        self.assertEqual(self.output, "")
        self.assertEqual(
            self.errors,
            "File not found: test/data/AddCommandTest-from_Foo.txt\n")
Exemple #16
0
    def test_add_task_without_date(self):
        config(p_overrides={('add', 'auto_creation_date'): '0'})

        args = ["New todo"]
        command = AddCommand.AddCommand(args, self.todolist, self.out,
                                        self.error)
        command.execute()

        self.assertEqual(self.todolist.todo(1).source(), "New todo")
        self.assertEqual(self.errors, "")
Exemple #17
0
    def test_add_dep6(self):
        command = AddCommand.AddCommand(["Foo"], self.todolist, self.out,
                                        self.error)
        command.execute()

        command = AddCommand.AddCommand(["Bar"], self.todolist, self.out,
                                        self.error)
        command.execute()

        command = AddCommand.AddCommand(["Baz before:1 before:2"],
                                        self.todolist, self.out, self.error)
        command.execute()

        self.assertEqual(
            self.todolist.todo(1).source(), self.today + " Foo id:1")
        self.assertEqual(
            self.todolist.todo(2).source(), self.today + " Bar id:2")
        self.assertEqual(
            self.todolist.todo(3).source(), self.today + " Baz p:1 p:2")
        self.assertEqual(self.errors, "")
Exemple #18
0
    def test_add_from_file(self):
        command = AddCommand.AddCommand(
            ["-f", "test/data/AddCommandTest-from_file.txt"], self.todolist,
            self.out, self.error)
        command.execute()

        self.assertEqual(
            self.output,
            u("|  1| {tod} Foo @fo\u00f3b\u0105r due:{tod} id:1\n|  2| {tod} Bar +baz t:{tod} p:1\n"
              .format(tod=self.today)))
        self.assertEqual(self.errors, "")
Exemple #19
0
    def test_add_dep5(self):
        """ Test for using an after: tag with non-existing value. """
        command = AddCommand.AddCommand(["Foo after:2"], self.todolist,
                                        self.out, self.error)
        command.execute()

        self.assertFalse(self.todolist.todo(1).has_tag("after"))
        self.assertEqual(self.todolist.todo(1).source(), self.today + " Foo")
        self.assertEqual(self.output,
                         "|  1| " + self.todolist.todo(1).source() + "\n")
        self.assertEqual(self.errors, "")