def test_assignment(self): results = Issue.search(projects=[self.project1, self.project2], assigned=[self.user1]) for x in results: self.assertEqual(self.user1.id, x.assigned_to_id) self.assertEqual(self.user1, x.assigned) self.assertEqual(results.total, 2) results = Issue.search(projects=[self.project1], assigned=[self.user1]) self.assertEqual(results.total, 1) with self.assertRaises(InvalidSearchException): results = Issue.search(assigned=[self.user2])
def search(self): # we might want to have /issues/search just return all issues # that are open in all projects a user is a part of pids = request.args.get('projects').split(",") assert pids projects = Project.all(pids) text = request.args.get('text', "").strip() issues = Issue.search(projects, search_text=text) return success(issues)
def setUpClass(cls): super(IssueListTest, cls).setUpClass() cls.issues = Issue.search(projects=[cls.project1])
def test_text_filter(self): results = Issue.search(projects=[self.project1], search_text="whatever") self.assertEquals(results.total, 1) results = Issue.search(projects=[self.project1], search_text="first") self.assertEquals(results.total, 1)
def test_multiple_projects_filter(self): results = Issue.search(projects=[self.project1, self.project2]) self.assertEquals(results.total, 4)
def test_project_filter(self): # should return 2 issues created on project1 results = Issue.search(projects=[self.project1]) self.assertEquals(results.total, 2)