From 43e4ff78b67573e227f5a7e1538dc4419ed610ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Barrag=C3=A1n=20Merino?= Date: Fri, 16 May 2014 12:33:38 +0200 Subject: [PATCH] Fix more tests --- taiga/projects/history/freeze_impl.py | 6 +++--- .../management/commands/migrate_history.py | 1 + taiga/projects/history/services.py | 8 ++++---- taiga/projects/issues/models.py | 16 ---------------- taiga/projects/milestones/models.py | 9 --------- taiga/projects/models.py | 7 ------- taiga/projects/tasks/models.py | 13 ------------- taiga/projects/userstories/models.py | 17 ----------------- taiga/projects/wiki/models.py | 11 ++++++++++- taiga/projects/wiki/tests/tests_api.py | 10 +++++----- 10 files changed, 23 insertions(+), 75 deletions(-) diff --git a/taiga/projects/history/freeze_impl.py b/taiga/projects/history/freeze_impl.py index 475f6668..b6d79e06 100644 --- a/taiga/projects/history/freeze_impl.py +++ b/taiga/projects/history/freeze_impl.py @@ -141,7 +141,7 @@ def task_values(diff): return values -def wiki_values(diff): +def wikipage_values(diff): values = _common_users_values(diff) return values @@ -248,12 +248,12 @@ def task_freezer(task) -> dict: return snapshot -def wiki_freezer(wiki) -> dict: +def wikipage_freezer(wiki) -> dict: snapshot = { "slug": wiki.slug, "owner": wiki.owner_id, "content": wiki.content, - "content_home": mdrender(wiki.project, wiki.content), + "content_html": mdrender(wiki.project, wiki.content), "watchers": [x.pk for x in wiki.watchers.all()], "attachments": extract_attachments(wiki), } diff --git a/taiga/projects/history/management/commands/migrate_history.py b/taiga/projects/history/management/commands/migrate_history.py index 860c09ba..b856cec5 100644 --- a/taiga/projects/history/management/commands/migrate_history.py +++ b/taiga/projects/history/management/commands/migrate_history.py @@ -75,3 +75,4 @@ class Command(BaseCommand): self.handle_generic_model("tasks", "Task") self.handle_generic_model("userstories", "UserStory") self.handle_generic_model("issues", "Issue") + self.handle_generic_model("wiki", "WikiPage") diff --git a/taiga/projects/history/services.py b/taiga/projects/history/services.py index b487ad06..c4d677a2 100644 --- a/taiga/projects/history/services.py +++ b/taiga/projects/history/services.py @@ -272,22 +272,22 @@ from .freeze_impl import milestone_freezer from .freeze_impl import userstory_freezer from .freeze_impl import issue_freezer from .freeze_impl import task_freezer -from .freeze_impl import wiki_freezer +from .freeze_impl import wikipage_freezer register_freeze_implementation(milestone_freezer, typename="milestones.milestone") register_freeze_implementation(userstory_freezer, typename="userstories.userstory") register_freeze_implementation(issue_freezer, typename="issues.issue") register_freeze_implementation(task_freezer, typename="tasks.task") -register_freeze_implementation(wiki_freezer, typename="wiki.wiki") +register_freeze_implementation(wikipage_freezer, typename="wiki.wikipage") from .freeze_impl import milestone_values from .freeze_impl import userstory_values from .freeze_impl import issue_values from .freeze_impl import task_values -from .freeze_impl import wiki_values +from .freeze_impl import wikipage_values register_values_implementation(milestone_values, typename="milestones.milestone") register_values_implementation(userstory_values, typename="userstories.userstory") register_values_implementation(issue_values, typename="issues.issue") register_values_implementation(task_values, typename="tasks.task") -register_values_implementation(wiki_values, typename="wiki.wiki") +register_values_implementation(wikipage_values, typename="wiki.wikipage") diff --git a/taiga/projects/issues/models.py b/taiga/projects/issues/models.py index 6ad645b6..ba92ae7f 100644 --- a/taiga/projects/issues/models.py +++ b/taiga/projects/issues/models.py @@ -65,22 +65,6 @@ class Issue(NeighborsMixin, WatchedMixin, BlockedMixin, models.Model): tags = PickledObjectField(null=False, blank=True, verbose_name=_("tags")) attachments = generic.GenericRelation("attachments.Attachment") - notifiable_fields = [ - "subject", - "milestone", - "owner", - "assigned_to", - "finished_date", - "type", - "status", - "severity", - "priority", - "tags", - "description", - "is_blocked", - "blocked_comment" - ] - class Meta: verbose_name = "issue" verbose_name_plural = "issues" diff --git a/taiga/projects/milestones/models.py b/taiga/projects/milestones/models.py index 64651ada..1c1fcca3 100644 --- a/taiga/projects/milestones/models.py +++ b/taiga/projects/milestones/models.py @@ -53,15 +53,6 @@ class Milestone(WatchedMixin, models.Model): order = models.PositiveSmallIntegerField(default=1, null=False, blank=False, verbose_name=_("order")) - notifiable_fields = [ - "name", - "owner", - "disponibility", - "closed", - "estimated_start", - "estimated_finish", - ] - class Meta: verbose_name = "milestone" verbose_name_plural = "milestones" diff --git a/taiga/projects/models.py b/taiga/projects/models.py index 0570b65b..88d1ce0e 100644 --- a/taiga/projects/models.py +++ b/taiga/projects/models.py @@ -162,13 +162,6 @@ class Project(ProjectDefaults, models.Model): domain = models.ForeignKey("domains.Domain", related_name="projects", null=True, blank=True, default=None, verbose_name=_("domain")) - notifiable_fields = [ - "name", - "total_milestones", - "total_story_points", - "description" - ] - class Meta: verbose_name = "project" verbose_name_plural = "projects" diff --git a/taiga/projects/tasks/models.py b/taiga/projects/tasks/models.py index b98cf588..e90129e1 100644 --- a/taiga/projects/tasks/models.py +++ b/taiga/projects/tasks/models.py @@ -63,19 +63,6 @@ class Task(WatchedMixin, BlockedMixin): is_iocaine = models.BooleanField(default=False, null=False, blank=True, verbose_name=_("is iocaine")) - notifiable_fields = [ - "subject", - "owner", - "assigned_to", - "finished_date", - "is_iocaine", - "status", - "description", - "tags", - "is_blocked", - "blocked_comment" - ] - class Meta: verbose_name = "task" verbose_name_plural = "tasks" diff --git a/taiga/projects/userstories/models.py b/taiga/projects/userstories/models.py index 9e968c75..88f36774 100644 --- a/taiga/projects/userstories/models.py +++ b/taiga/projects/userstories/models.py @@ -97,23 +97,6 @@ class UserStory(NeighborsMixin, WatchedMixin, BlockedMixin, models.Model): related_name="generated_user_stories", verbose_name=_("generated from issue")) - notifiable_fields = [ - "subject", - "milestone", - "owner", - "assigned_to", - "finish_date", - "client_requirement", - "team_requirement", - "status", - "points", - "tags", - "description", - "is_blocked", - "blocked_comment", - "generated_from_isssue" - ] - class Meta: verbose_name = "user story" verbose_name_plural = "user stories" diff --git a/taiga/projects/wiki/models.py b/taiga/projects/wiki/models.py index d718ad21..4bf7a139 100644 --- a/taiga/projects/wiki/models.py +++ b/taiga/projects/wiki/models.py @@ -18,9 +18,10 @@ from django.db import models from django.contrib.contenttypes import generic from django.conf import settings from django.utils.translation import ugettext_lazy as _ +from taiga.projects.notifications.models import WatchedMixin -class WikiPage(models.Model): +class WikiPage(WatchedMixin, models.Model): project = models.ForeignKey("projects.Project", null=False, blank=False, related_name="wiki_pages", verbose_name=_("project")) slug = models.SlugField(max_length=500, db_index=True, null=False, blank=False, @@ -50,6 +51,14 @@ class WikiPage(models.Model): def __str__(self): return "project {0} - {1}".format(self.project_id, self.slug) + def _get_watchers_by_role(self): + return { + "owner": self.owner, + "assigned_to": None, + "suscribed_watchers": self.watchers.all(), + "project": self.project, + } + class WikiLink(models.Model): project = models.ForeignKey("projects.Project", null=False, blank=False, diff --git a/taiga/projects/wiki/tests/tests_api.py b/taiga/projects/wiki/tests/tests_api.py index 4a398c80..582d1617 100644 --- a/taiga/projects/wiki/tests/tests_api.py +++ b/taiga/projects/wiki/tests/tests_api.py @@ -159,7 +159,7 @@ class WikiPagesTestCase(test.TestCase): content_type="application/json") self.assertEqual(response.status_code, 201) self.assertEqual(WikiPage.objects.all().count(), 3) - self.assertEqual(len(mail.outbox), 0) + self.assertEqual(len(mail.outbox), 2) self.client.logout() def test_create_wiki_page_by_membership(self): @@ -180,7 +180,7 @@ class WikiPagesTestCase(test.TestCase): content_type="application/json") self.assertEqual(response.status_code, 201) self.assertEqual(WikiPage.objects.all().count(), 3) - self.assertEqual(len(mail.outbox), 0) + self.assertEqual(len(mail.outbox), 2) self.client.logout() def test_create_wiki_page_by_membership_with_wron_project(self): @@ -254,7 +254,7 @@ class WikiPagesTestCase(test.TestCase): self.assertEqual(response.status_code, 200) self.assertEqual(data["content"], response.data["content"]) self.assertEqual(WikiPage.objects.all().count(), 2) - self.assertEqual(len(mail.outbox), 0) + self.assertEqual(len(mail.outbox), 2) self.client.logout() def test_edit_wiki_page_by_project_owner_with_wron_project(self): @@ -292,7 +292,7 @@ class WikiPagesTestCase(test.TestCase): self.assertEqual(response.status_code, 200) self.assertEqual(data["content"], response.data["content"]) self.assertEqual(WikiPage.objects.all().count(), 2) - self.assertEqual(len(mail.outbox), 0) + self.assertEqual(len(mail.outbox), 2) self.client.logout() def test_edit_wiki_page_by_owner_with_wron_project(self): @@ -330,7 +330,7 @@ class WikiPagesTestCase(test.TestCase): self.assertEqual(response.status_code, 200) self.assertEqual(data["content"], response.data["content"]) self.assertEqual(WikiPage.objects.all().count(), 2) - self.assertEqual(len(mail.outbox), 0) + self.assertEqual(len(mail.outbox), 2) self.client.logout() def test_edit_wiki_page_by_membership_with_wron_project(self):