[damned-lies] Rename get_committers/reviewers/translators functions to _exact



commit 54cc577e40f03c172321d1260fbf1d525a96d2c7
Author: Stéphane Raimbault <stephane raimbault gmail com>
Date:   Mon Jun 1 00:15:59 2009 +0200

    Rename get_committers/reviewers/translators functions to _exact
    
    - These functions return only the members of the team with the exact requested
      role so it isn't the same behaviour as is_committer/reviewer/translator
      functions.
    - Add a list() around the query to return the same object than the
      prefilled roles
    - Updated test
---
 teams/models.py            |   18 +++++++++---------
 teams/tests.py             |    2 +-
 teams/views.py             |    6 +++---
 vertimus/models.py         |    2 +-
 vertimus/tests/__init__.py |    1 -
 5 files changed, 14 insertions(+), 15 deletions(-)

diff --git a/teams/models.py b/teams/models.py
index bca98c5..009e216 100644
--- a/teams/models.py
+++ b/teams/models.py
@@ -128,22 +128,22 @@ class Team(models.Model):
             except Person.DoesNotExist:
                 return None
 
-    def get_members_by_role(self, role):
+    def get_members_by_role_exact(self, role):
         try:
             return self.roles[role]
         except:
-            members = Person.objects.filter(role__team__id=self.id,
-                                            role__role=role)
+            members = list(Person.objects.filter(role__team__id=self.id,
+                                                 role__role=role))
             return members
 
-    def get_committers(self):
-        return self.get_members_by_role('committer')
+    def get_committers_exact(self):
+        return self.get_members_by_role_exact('committer')
 
-    def get_reviewers(self):
-        return self.get_members_by_role('reviewer')
+    def get_reviewers_exact(self):
+        return self.get_members_by_role_exact('reviewer')
 
-    def get_translators(self):
-        return self.get_members_by_role('translator')
+    def get_translators_exact(self):
+        return self.get_members_by_role_exact('translator')
 
 class FakeTeam(object):
     """
diff --git a/teams/tests.py b/teams/tests.py
index 56b2681..40c1245 100644
--- a/teams/tests.py
+++ b/teams/tests.py
@@ -61,5 +61,5 @@ class TeamTest(TestCase):
         pcoo = team.get_coordinator()
         self.assertEqual(pcoo, self.pcoo)
 
-        list_pc = team.get_committers()
+        list_pc = team.get_committers_exact()
         self.assertEqual(list_pc[0], self.pc)
diff --git a/teams/views.py b/teams/views.py
index c1fcc5d..c1e23bb 100644
--- a/teams/views.py
+++ b/teams/views.py
@@ -42,17 +42,17 @@ def team(request, team_slug):
         coordinator = team.get_coordinator()
         mem_groups = (
                {'title': _("Committers"),
-                'members': team.get_committers(),
+                'members': team.get_committers_exact(),
                 'form': None,
                 'no_member': _("No committers")
                },
                {'title': _("Reviewers"),
-                'members': team.get_reviewers(),
+                'members': team.get_reviewers_exact(),
                 'form': None,
                 'no_member': _("No reviewers")
                },
                {'title': _("Translators"),
-                'members': team.get_translators(),
+                'members': team.get_translators_exact(),
                 'form': None,
                 'no_member': _("No translators")
                },
diff --git a/vertimus/models.py b/vertimus/models.py
index 5423cd1..47325fa 100644
--- a/vertimus/models.py
+++ b/vertimus/models.py
@@ -653,7 +653,7 @@ class ActionTC(ActionAbstract):
 
         new_state = self._new_state()
         # Send an email to all committers of the team
-        committers = [c.email for c in state.language.team.get_committers()]
+        committers = [c.email for c in state.language.team.get_committers_exact()]
         self.send_mail_new_state(state, new_state, committers)
         return new_state
 
diff --git a/vertimus/tests/__init__.py b/vertimus/tests/__init__.py
index e95eca0..f20011c 100644
--- a/vertimus/tests/__init__.py
+++ b/vertimus/tests/__init__.py
@@ -20,7 +20,6 @@
 
 import os
 
-from django.test import TestCase
 from django.core.files.base import File, ContentFile
 from django.core.files.uploadedfile import SimpleUploadedFile
 from django.http import QueryDict



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]