def test_resolve_mentor_validation(self): model = ContentType.objects.get_for_model(Bug) items = ActionItem.objects.filter(content_type=model) ok_(not items.exists()) mentor = UserFactory.create(groups=['Rep', 'Mentor']) UserFactory.create(groups=['Rep'], userprofile__mentor=mentor) bug = BugFactory.build(pending_mentor_validation=True, assigned_to=mentor) bug.save() items = ActionItem.objects.filter(content_type=model) eq_(items.count(), 1) eq_(items[0].name, 'Waiting mentor validation for ' + bug.summary) eq_(items[0].user, mentor) eq_(items[0].priority, ActionItem.BLOCKER) bug.pending_mentor_validation = False bug.save() items = ActionItem.objects.filter(content_type=model, object_id=bug.id) for item in items: ok_(item.completed) ok_(item.resolved)
def test_council_reviewer_assigned(self): model = ContentType.objects.get_for_model(Bug) items = ActionItem.objects.filter(content_type=model) ok_(not items.exists()) user = UserFactory.create(groups=['Rep', 'Council']) bug = BugFactory.build(assigned_to=user, council_member_assigned=True) bug.save() items = ActionItem.objects.filter(content_type=model, object_id=bug.id) eq_(items.count(), 1) eq_(items[0].name, 'Review budget request ' + bug.summary) eq_(items[0].user, user) eq_(items[0].priority, ActionItem.BLOCKER)
def test_waiting_receipts(self): model = ContentType.objects.get_for_model(Bug) items = ActionItem.objects.filter(content_type=model) ok_(not items.exists()) whiteboard = '[waiting receipts]' user = UserFactory.create(groups=['Rep']) bug = BugFactory.build(whiteboard=whiteboard, assigned_to=user) bug.save() items = ActionItem.objects.filter(content_type=model, object_id=bug.id) eq_(items.count(), 1) eq_(items[0].name, 'Add receipts for ' + bug.summary) eq_(items[0].user, user) eq_(items[0].priority, ActionItem.NORMAL)
def test_council_reviewer_removed(self): model = ContentType.objects.get_for_model(Bug) items = ActionItem.objects.filter(content_type=model) ok_(not items.exists()) user = UserFactory.create(groups=['Council']) bug = BugFactory.build(assigned_to=user, council_member_assigned=True) bug.save() bug.council_member_assigned = False bug.save() items = ActionItem.objects.filter(content_type=model, object_id=bug.id) for item in items: ok_(item.completed) ok_(item.resolved)
def test_change_assigned_user(self): model = ContentType.objects.get_for_model(Bug) items = ActionItem.objects.filter(content_type=model) ok_(not items.exists()) user_1 = UserFactory.create(groups=['Rep']) user_2 = UserFactory.create(groups=['Rep']) bug = BugFactory.build(assigned_to=user_1, pending_mentor_validation=True) bug.save() item = ActionItem.objects.get(content_type=model, object_id=bug.id) eq_(item.user, user_1) bug.assigned_to = user_2 bug.save() item = ActionItem.objects.get(content_type=model, object_id=bug.id) eq_(item.user, user_2)
def test_update_bug_whiteboard(self): model = ContentType.objects.get_for_model(Bug) items = ActionItem.objects.filter(content_type=model) ok_(not items.exists()) whiteboard = '[waiting receipts][waiting report][waiting photos]' user = UserFactory.create(groups=['Rep']) bug = BugFactory.build(whiteboard=whiteboard, assigned_to=user) bug.save() items = ActionItem.objects.filter(content_type=model) eq_(items.count(), 3) bug.whiteboard = '' bug.save() items = ActionItem.objects.filter(content_type=model, object_id=bug.id) for item in items: ok_(item.completed) ok_(item.resolved)
def test_needinfo(self): model = ContentType.objects.get_for_model(Bug) items = ActionItem.objects.filter(content_type=model) ok_(not items.exists()) needinfo = UserFactory.create(groups=['Rep']) user = UserFactory.create(groups=['Rep']) bug = BugFactory.build(assigned_to=user) bug.save() bug.budget_needinfo.add(needinfo) bug.save() items = ActionItem.objects.filter(content_type=model, object_id=bug.id) ok_(items.count(), 1) for item in items: eq_(item.name, 'Need info for ' + bug.summary) eq_(item.user, needinfo) ok_(item.priority, ActionItem.MINOR)
def test_waiting_multiple_documents(self): model = ContentType.objects.get_for_model(Bug) items = ActionItem.objects.filter(content_type=model) ok_(not items.exists()) whiteboard = '[waiting receipts][waiting report][waiting photos]' user = UserFactory.create(groups=['Rep']) bug = BugFactory.build(whiteboard=whiteboard, assigned_to=user) bug.save() items = ActionItem.objects.filter(content_type=model, object_id=bug.id) eq_(items.count(), 3) namelist = ['Add receipts for ' + bug.summary, 'Add report for ' + bug.summary, 'Add photos for ' + bug.summary] for item in items: ok_(item.name in namelist) eq_(item.user, user) eq_(item.priority, ActionItem.NORMAL)
def test_waiting_multiple_documents(self): model = ContentType.objects.get_for_model(Bug) items = ActionItem.objects.filter(content_type=model) ok_(not items.exists()) whiteboard = '[waiting receipts][waiting report][waiting photos]' user = UserFactory.create(groups=['Rep']) bug = BugFactory.build(whiteboard=whiteboard, assigned_to=user) bug.save() items = ActionItem.objects.filter(content_type=model, object_id=bug.id) eq_(items.count(), 3) namelist = [ 'Add receipts for ' + bug.summary, 'Add report for ' + bug.summary, 'Add photos for ' + bug.summary ] for item in items: ok_(item.name in namelist) eq_(item.user, user) eq_(item.priority, ActionItem.NORMAL)