コード例 #1
0
ファイル: test_models.py プロジェクト: ccnmtl/dmt
 def test_managers(self):
     p = ProjectFactory()
     u = UserProfileFactory()
     p.add_manager(u)
     self.assertEqual(set(p.managers()),
                      set([u, p.caretaker_user.userprofile,
                           p.project_manager_user.userprofile]))
コード例 #2
0
ファイル: test_views.py プロジェクト: ccnmtl/dmt
    def setUp(self):
        self.u = User.objects.create(username="******")
        self.client.force_authenticate(user=self.u)

        self.project1 = ProjectFactory(name='Project 1')
        self.project2 = ProjectFactory(name='Test Project 2')
        self.project3 = ProjectFactory(name='Testing number 3')
        self.project4 = ProjectFactory(name='abcdefg (project)')
コード例 #3
0
    def test_personnel_present(self):
        u1 = UserProfileFactory()
        u2 = UserProfileFactory()
        u3 = UserProfileFactory()
        p = ProjectFactory()
        p.add_personnel(u3)
        f = ProjectPersonnelForm(pid=p.pid)

        personnel_in_form = f.fields.get('personnel').queryset.all()
        self.assertTrue(u1 in personnel_in_form)
        self.assertTrue(u2 in personnel_in_form)
        self.assertFalse(u3 in personnel_in_form)
コード例 #4
0
ファイル: test_models.py プロジェクト: ccnmtl/dmt
 def test_remove_personnel(self):
     p = ProjectFactory()
     u = UserProfileFactory()
     p.add_manager(u)
     self.assertEqual(
         set(p.managers()),
         set([u, p.caretaker_user.userprofile,
              p.project_manager_user.userprofile]))
     p.remove_personnel(u)
     self.assertEqual(
         set(p.managers()),
         set([p.caretaker_user.userprofile,
              p.project_manager_user.userprofile]))
     self.assertEqual(p.developers(), [])
     self.assertEqual(p.guests(), [])
コード例 #5
0
ファイル: test_views.py プロジェクト: ccnmtl/dmt
    def setUp(self):
        self.title = 'Test item title'
        self.email = '*****@*****.**'
        self.name = 'Item Submitter'
        self.owner = UserProfileFactory()
        self.assignee = UserProfileFactory()
        self.project = ProjectFactory()
        self.milestone = MilestoneFactory(project=self.project)
        self.estimated_time = '1h'
        self.target_date = '2015-01-01'
        self.debug_info = 'debug info: zofjiojfojef'
        self.post_data = {
            'title': self.title,
            'email': self.email,
            'name': self.name,
            'pid': smart_text(self.project.pk),
            'mid': smart_text(self.milestone.pk),
            'type': 'action item',
            'owner': self.owner.username,
            'assigned_to': self.assignee.username,
            'estimated_time': self.estimated_time,
            'target_date': self.target_date,
            'debug_info': self.debug_info,
        }

        # Mock for passing the SafeOriginPermission
        self.remote_host = 'http://example.columbia.edu'
コード例 #6
0
ファイル: test_calculators.py プロジェクト: ccnmtl/dmt
 def test_calc(self):
     ProjectFactory()
     UserProfileFactory()
     UserProfileFactory()
     UserProfileFactory()
     calc = ProjectStatusCalculator()
     calc.calc()
コード例 #7
0
 def test_completed_time_for_interval(self):
     u = UserProfileFactory()
     p = ProjectFactory()
     pu = ProjectUser(p, u)
     start = datetime(year=2013, month=12, day=16).replace(tzinfo=utc)
     end = datetime(year=2013, month=12, day=23).replace(tzinfo=utc)
     r = pu.completed_time_for_interval(start, end)
     self.assertEqual(r.total_seconds(), 0.0)
コード例 #8
0
ファイル: test_models.py プロジェクト: ccnmtl/dmt
 def test_personnel_in_project_sorts_groups_first(self):
     p = ProjectFactory()
     u = UserProfileFactory()
     g = GroupFactory()
     p.add_manager(u)
     p.add_manager(g.grp)
     r = p.personnel_in_project()
     self.assertEqual(set(r), set([g.grp, u, p.caretaker_user.userprofile,
                                   p.project_manager_user.userprofile]))
コード例 #9
0
ファイル: test_models.py プロジェクト: ccnmtl/dmt
    def test_email_reply_with_bad_header(self):
        n = NodeFactory()
        p = ProjectFactory()
        n.project = p
        u = UserProfileFactory()
        n.save()

        class DummyReply(object):
            subject = "a subject\r\nfoo"
        n.email_reply("", u, DummyReply())
        self.assertEqual(len(mail.outbox), 1)
コード例 #10
0
 def test_all_users_not_in_project(self):
     p = ProjectFactory()
     u1 = UserProfileFactory(status='active')
     u2 = UserProfileFactory(status='active')
     p.add_manager(u1)
     self.assertTrue(u2 in p.all_users_not_in_project())
     self.assertFalse(u1 in p.all_users_not_in_project())
コード例 #11
0
 def test_email_post(self):
     p = ProjectFactory()
     n = NodeFactory(subject="\r\n \r\n linebreaks", project=p)
     u2 = UserProfileFactory(status='active')
     p.add_manager(u2)
     p.email_post(n, "a body", n.user.userprofile)
     self.assertEqual(len(mail.outbox), 1)
コード例 #12
0
ファイル: test_models.py プロジェクト: ccnmtl/dmt
 def test_ensure_caretaker_in_personnel(self):
     p = ProjectFactory()
     WorksOn.objects.filter(project=p, user=p.caretaker_user).delete()
     self.assertEqual(p.managers(), [p.project_manager_user.userprofile])
     p.ensure_caretaker_in_personnel()
     self.assertEqual(set(p.managers()),
                      set([p.caretaker_user.userprofile,
                           p.project_manager_user.userprofile]))
コード例 #13
0
    def test_toggle_pin(self):
        p = ProjectFactory()
        u = UserFactory()

        self.assertEqual(p.projectpin_set.count(), 0)

        p.toggle_pin(u)
        self.assertEqual(p.projectpin_set.count(), 1)

        p.toggle_pin(u)
        self.assertEqual(p.projectpin_set.count(), 0)
コード例 #14
0
 def test_guests_empty(self):
     p = ProjectFactory()
     self.assertEqual(p.guests(), [])
コード例 #15
0
ファイル: test_calculators.py プロジェクト: ccnmtl/dmt
 def test_calc(self):
     ProjectFactory()
     calc = TimeSpentByProjectCalculator()
     calc.calc()
コード例 #16
0
 def test_add_milestone_invalid_target_date(self):
     p = ProjectFactory()
     with self.assertRaises(forms.ValidationError):
         p.add_milestone('name', 'not a date', 'desc')
コード例 #17
0
 def test_add_milestone_valid_target_date(self):
     p = ProjectFactory()
     p.add_milestone('name', '2020-04-04', 'desc')
     p.add_milestone('name', '2020-04-4', 'desc')
     p.add_milestone('name', '2020-4-04', 'desc')
     self.assertEqual(Milestone.objects.filter(project=p).count(), 3)
コード例 #18
0
 def test_timeline_empty(self):
     p = ProjectFactory()
     self.assertEqual(p.timeline(), [])
コード例 #19
0
 def test_all_personnel_in_project(self):
     p = ProjectFactory()
     g = GroupFactory()
     p.add_manager(g.grp)
     self.assertTrue(g.username in p.all_personnel_in_project())
コード例 #20
0
    def test_only_one_role_allowed(self):
        p = ProjectFactory()
        u = UserProfileFactory()
        p.add_manager(u)
        self.assertEqual(
            set(p.managers()),
            set([
                u, p.caretaker_user.userprofile,
                p.project_manager_user.userprofile
            ]))
        self.assertEqual(p.developers(), [])
        self.assertEqual(p.guests(), [])
        p.add_developer(u)
        self.assertEqual(p.managers(), [p.caretaker_user.userprofile])
        self.assertEqual(p.developers(), [u])
        self.assertEqual(p.guests(), [])
        p.add_guest(u)
        self.assertEqual(p.managers(), [p.caretaker_user.userprofile])
        self.assertEqual(p.developers(), [])
        self.assertEqual(p.guests(), [u])

        p.add_manager(u)
        self.assertEqual(
            set(p.managers()),
            set([
                u, p.caretaker_user.userprofile,
                p.project_manager_user.userprofile
            ]))
        self.assertEqual(p.developers(), [])
        self.assertEqual(p.guests(), [])
        p.add_developer(u)
        self.assertEqual(
            p.managers(),
            [p.caretaker_user.userprofile, p.project_manager_user.userprofile])
        self.assertEqual(p.developers(), [u])
        self.assertEqual(p.guests(), [])
        p.add_guest(u)
        self.assertEqual(
            p.managers(),
            [p.caretaker_user.userprofile, p.project_manager_user.userprofile])
        self.assertEqual(p.developers(), [])
        self.assertEqual(p.guests(), [u])
コード例 #21
0
 def test_guests(self):
     p = ProjectFactory()
     u = UserProfileFactory()
     p.add_guest(u)
     self.assertEqual(p.guests(), [u])
コード例 #22
0
 def test_managers_empty(self):
     p = ProjectFactory()
     self.assertEqual(
         p.managers(),
         [p.caretaker_user.userprofile, p.project_manager_user.userprofile])
コード例 #23
0
 def test_open_milestones(self):
     p = ProjectFactory()
     MilestoneFactory(project=p, status='CLOSED')
     self.assertEqual(len(p.milestones()), 1)
     self.assertEqual(len(p.open_milestones()), 0)
コード例 #24
0
 def test_open_milestones_empty(self):
     p = ProjectFactory()
     self.assertEqual(len(p.open_milestones()), 0)
コード例 #25
0
 def test_developers_empty(self):
     p = ProjectFactory()
     self.assertEqual(p.developers(), [])
コード例 #26
0
 def test_init(self):
     p = ProjectFactory()
     ProjectPersonnelForm(pid=p.pid)
コード例 #27
0
 def test_developers(self):
     p = ProjectFactory()
     u = UserProfileFactory()
     p.add_developer(u)
     self.assertEqual(p.developers(), [u])