Ejemplo n.º 1
0
    def test_tasks_sorted_by_compelted(self):
        completed = Task.create(self.user, "completed", "completed desc")
        completed.complete(self.user)
        uncompleted = Task.create(self.user, "uncompleted", "uncompleted desc")

        data = TodoData(self.user).data()

        self.assertEqual(uncompleted, data[0]["tasks"][0])
        self.assertEqual(completed, data[0]["tasks"][1])
Ejemplo n.º 2
0
    def test_tasks_sorted_newest(self):
        older = Task.create(self.user, "older", "older desc")
        newer = Task.create(self.user, "newer", "newer desc")
        newest = Task.create(self.user, "newest", "newest desc")

        data = TodoData(self.user).data()

        self.assertEqual(older, data[0]["tasks"][0])
        self.assertEqual(newer, data[0]["tasks"][1])
        self.assertEqual(newest, data[0]["tasks"][2])
Ejemplo n.º 3
0
    def test_users_with_no_tasks_ignored(self):
        has_tasks = User.objects.create_user("hastasks", password="******")
        no_tasks = User.objects.create_user("notasks", password="******")

        user_task = Task.create(self.user, "user_task", "desc")
        has_tasks_task = Task.create(has_tasks, "has_tasks_task", "desc")

        data = TodoData(self.user).data()

        self.assertEqual(2, len(data))
        self.assertFalse({"user": no_tasks, "tasks": []} in data)
Ejemplo n.º 4
0
    def _create_task(self, request):
        user = request.user
        title = request.POST.get("title", "")
        description = request.POST.get("description", "")
        new_task = Task.create(user, title, description)

        return redirect("todo")
Ejemplo n.º 5
0
    def test_user_always_first(self):
        """
        User's list should always be first, even if they have 0 tasks and
        another user has 1+ tasks.
        """
        other_user = User.objects.create_user("other", password="******")
        task = Task.create(self.user, "user_task", "desc")

        data = TodoData(self.user).data()
        self.assertEqual(self.user, data[0]["user"])
Ejemplo n.º 6
0
 def test_delete_task(self):
     self.client.login(username="******", password="******")
     task = Task.create(self.user, "blah", "blah")
     response = self.client.post(reverse("task"), {
         "_method": "DELETE",
         "task_id": 1,
     },
                                 follow=True)
     tasks = Task.objects.all()
     self.assertEqual(0, len(tasks))
     self.assertRedirects(response, reverse("todo"))
Ejemplo n.º 7
0
 def test_edit_task_complete(self):
     self.client.login(username="******", password="******")
     task = Task.create(self.user, "blah", "blah")
     response = self.client.post(reverse("task"), {
         "_method": "PUT",
         "task_id": 1,
         "completed": "true"
     },
                                 follow=True)
     task.refresh_from_db()
     self.assertFalse(task.task_open)
     self.assertRedirects(response, reverse("todo"))
Ejemplo n.º 8
0
 def test_edit_task_all(self):
     self.client.login(username="******", password="******")
     task = Task.create(self.user, "blah", "blah")
     response = self.client.post(reverse("task"), {
         "_method": "PUT",
         "task_id": 1,
         "title": "new title",
         "description": "new desc",
     },
                                 follow=True)
     task.refresh_from_db()
     self.assertEqual("new title", task.title)
     self.assertEqual("new desc", task.description)
     self.assertRedirects(response, reverse("todo"))
Ejemplo n.º 9
0
    def test_users_sorted_by_number_of_tasks(self):
        user_little = User.objects.create_user("little", password="******")
        user_lots = User.objects.create_user("lots", password="******")

        Task.create(user_little, "title1", "desc1")
        Task.create(user_lots, "title2", "desc2")
        Task.create(user_lots, "title3", "desc3")

        data = TodoData(self.user).data()

        self.assertEqual(user_lots, data[1]["user"])
        self.assertEqual(user_little, data[2]["user"])
Ejemplo n.º 10
0
 def setUp(self):
     self.user = User.objects.create_user("ronan", password="******")
     self.task = Task.create(self.user, "Test Title", "Test Desc")