def test_get_with_status(self): """Testing the GET review-requests/?status= API""" self.create_review_request(publish=True, status='S') self.create_review_request(publish=True, status='S') self.create_review_request(publish=True, status='D') self.create_review_request(publish=True, status='P') self.create_review_request(publish=True, status='P') self.create_review_request(publish=True, status='P') url = get_review_request_list_url() rsp = self.apiGet(url, {'status': 'submitted'}, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 2) rsp = self.apiGet(url, {'status': 'discarded'}, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1) rsp = self.apiGet(url, {'status': 'all'}, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 6)
def test_get_with_to_users_and_status(self): """Testing the GET review-requests/?to-users=&status= API""" grumpy = User.objects.get(username='******') self.create_review_request(publish=True) review_request = self.create_review_request(publish=True, status='S') review_request.target_people.add(grumpy) review_request = self.create_review_request(publish=True, status='D') review_request.target_people.add(grumpy) review_request = self.create_review_request(publish=True, status='D') review_request.target_people.add(grumpy) url = get_review_request_list_url() rsp = self.apiGet(url, { 'status': 'submitted', 'to-users': 'grumpy', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1) rsp = self.apiGet(url, { 'status': 'discarded', 'to-users': 'grumpy', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 2)
def test_get_with_time_added_from(self): """Testing the GET review-requests/?time-added-from= API""" start_index = 3 public_review_requests = [ self.create_review_request(publish=True), self.create_review_request(publish=True), self.create_review_request(publish=True), self.create_review_request(publish=True), self.create_review_request(publish=True), ] r = public_review_requests[start_index] timestamp = r.time_added.isoformat() rsp = self.apiGet(get_review_request_list_url(), { 'time-added-from': timestamp, 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], len(public_review_requests) - start_index) self.assertEqual( rsp['count'], ReviewRequest.objects.filter(public=True, status='P', time_added__gte=r.time_added).count())
def test_get_with_repository_and_commit_id(self): """Testing the GET review-requests/?repository=&commit_id= API with changenum backwards-compatibility """ review_request = self.create_review_request(create_repository=True, publish=True) review_request.changenum = 1234 review_request.save() self.assertEqual(review_request.commit_id, None) commit_id = six.text_type(review_request.changenum) rsp = self.apiGet(get_review_request_list_url(), { 'repository': review_request.repository.id, 'commit_id': review_request.commit, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1) self.assertEqual(rsp['review_requests'][0]['id'], review_request.display_id) self.assertEqual(rsp['review_requests'][0]['summary'], review_request.summary) self.assertEqual(rsp['review_requests'][0]['changenum'], review_request.changenum) self.assertEqual(rsp['review_requests'][0]['commit_id'], commit_id)
def test_get_with_last_updated_to(self): """Testing the GET review-requests/?last-updated-to= API""" start_index = 3 public_review_requests = [ self.create_review_request(publish=True), self.create_review_request(publish=True), self.create_review_request(publish=True), self.create_review_request(publish=True), self.create_review_request(publish=True), ] r = public_review_requests[start_index] timestamp = r.last_updated.isoformat() rsp = self.apiGet(get_review_request_list_url(), { 'last-updated-to': timestamp, 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], len(public_review_requests) - start_index + 1) self.assertEqual( rsp['count'], ReviewRequest.objects.filter( public=True, status='P', last_updated__lt=r.last_updated).count())
def test_get_with_to_groups_and_status(self): """Testing the GET review-requests/?to-groups=&status= API""" group = self.create_review_group(name='devgroup') review_request = self.create_review_request(publish=True) review_request.target_groups.add(group) review_request = self.create_review_request(publish=True, status='S') review_request.target_groups.add(group) review_request = self.create_review_request(publish=True, status='D') review_request.target_groups.add(group) review_request = self.create_review_request(publish=True, status='D') review_request.target_groups.add(group) url = get_review_request_list_url() rsp = self.apiGet(url, { 'status': 'submitted', 'to-groups': 'devgroup', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1) rsp = self.apiGet(url, { 'status': 'discarded', 'to-groups': 'devgroup', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 2)
def test_get_with_time_added_from(self): """Testing the GET review-requests/?time-added-from= API""" start_index = 3 public_review_requests = [ self.create_review_request(publish=True), self.create_review_request(publish=True), self.create_review_request(publish=True), self.create_review_request(publish=True), self.create_review_request(publish=True), ] r = public_review_requests[start_index] timestamp = r.time_added.isoformat() rsp = self.apiGet(get_review_request_list_url(), { 'time-added-from': timestamp, 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], len(public_review_requests) - start_index) self.assertEqual( rsp['count'], ReviewRequest.objects.filter( public=True, status='P', time_added__gte=r.time_added).count())
def test_post_reviewrequests_with_invalid_repository_error(self): """Testing the POST review-requests/ API with Invalid Repository error""" rsp = self.apiPost( get_review_request_list_url(), {'repository': 'gobbledygook'}, expected_status=400) self.assertEqual(rsp['stat'], 'fail') self.assertEqual(rsp['err']['code'], INVALID_REPOSITORY.code)
def test_get_reviewrequests_with_to_users_directly(self): """Testing the GET review-requests/?to-users-directly= API""" rsp = self.apiGet(get_review_request_list_url(), { 'to-users-directly': 'doc', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), ReviewRequest.objects.to_user_directly("doc").count())
def test_get_with_to_users_directly(self): """Testing the GET review-requests/?to-users-directly= API""" rsp = self.apiGet(get_review_request_list_url(), { 'to-users-directly': 'doc', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), ReviewRequest.objects.to_user_directly("doc").count())
def test_get_reviewrequests_with_from_user(self): """Testing the GET review-requests/?from-user= API""" rsp = self.apiGet(get_review_request_list_url(), { 'from-user': '******', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), ReviewRequest.objects.from_user("grumpy").count())
def test_post_reviewrequests_with_site_no_access(self): """Testing the POST review-requests/ API with a local site and Permission Denied error""" repository = self.create_repository(with_local_site=True) self.apiPost( get_review_request_list_url(self.local_site_name), {'repository': repository.path}, expected_status=403)
def test_get_with_from_user(self): """Testing the GET review-requests/?from-user= API""" rsp = self.apiGet(get_review_request_list_url(), { 'from-user': '******', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), ReviewRequest.objects.from_user("grumpy").count())
def test_get_reviewrequests_with_from_user_and_counts_only(self): """Testing the GET review-requests/?from-user=&counts-only=1 API""" rsp = self.apiGet(get_review_request_list_url(), { 'from-user': '******', 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], ReviewRequest.objects.from_user("grumpy").count())
def test_get_with_from_user_and_counts_only(self): """Testing the GET review-requests/?from-user=&counts-only=1 API""" rsp = self.apiGet(get_review_request_list_url(), { 'from-user': '******', 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], ReviewRequest.objects.from_user("grumpy").count())
def test_get_reviewrequests(self): """Testing the GET review-requests/ API""" self.create_review_request(publish=True) self.create_review_request(publish=True) self.create_review_request(publish=True, with_local_site=True) rsp = self.apiGet(get_review_request_list_url(), expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 2)
def test_get_reviewrequests_with_counts_only(self): """Testing the GET review-requests/?counts-only=1 API""" self.create_review_request(publish=True) self.create_review_request(publish=True) rsp = self.apiGet(get_review_request_list_url(), { 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], 2)
def test_post_reviewrequests_with_no_site_invalid_repository_error(self): """Testing the POST review-requests/ API with Invalid Repository error from a site-local repository""" repository = self.create_repository(with_local_site=True) rsp = self.apiPost( get_review_request_list_url(), {'repository': repository.path}, expected_status=400) self.assertEqual(rsp['stat'], 'fail') self.assertEqual(rsp['err']['code'], INVALID_REPOSITORY.code)
def test_get_with_counts_only(self): """Testing the GET review-requests/?counts-only=1 API""" self.create_review_request(publish=True) self.create_review_request(publish=True) rsp = self.apiGet(get_review_request_list_url(), { 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], 2)
def test_post_with_site_invalid_repository_error(self): """Testing the POST review-requests/ API with a local site and Invalid Repository error """ repository = self.create_repository() self._login_user(local_site=True) rsp = self.apiPost(get_review_request_list_url(self.local_site_name), {'repository': repository.path}, expected_status=400) self.assertEqual(rsp['stat'], 'fail') self.assertEqual(rsp['err']['code'], INVALID_REPOSITORY.code)
def test_get_reviewrequests_with_site(self): """Testing the GET review-requests/ API with a local site""" self._login_user(local_site=True) self.create_review_request(publish=True, with_local_site=True) self.create_review_request(publish=True, with_local_site=True, local_id=1002) self.create_review_request(publish=True) rsp = self.apiGet(get_review_request_list_url(self.local_site_name), expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 2)
def test_post_reviewrequests_with_site(self): """Testing the POST review-requests/ API with a local site""" self._login_user(local_site=True) repository = self.create_repository(with_local_site=True) rsp = self.apiPost( get_review_request_list_url(self.local_site_name), {'repository': repository.path}, expected_mimetype=review_request_item_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['review_request']['links']['repository']['title'], repository.name)
def test_post_reviewrequests_with_submit_as_and_permission_denied_error(self): """Testing the POST review-requests/?submit_as= API with Permission Denied error""" repository = self.create_repository() rsp = self.apiPost( get_review_request_list_url(), { 'repository': repository.path, 'submit_as': 'doc', }, expected_status=403) self.assertEqual(rsp['stat'], 'fail') self.assertEqual(rsp['err']['code'], PERMISSION_DENIED.code)
def test_post_with_no_repository(self): """Testing the POST review-requests/ API with no repository""" rsp = self.apiPost(get_review_request_list_url(), expected_mimetype=review_request_item_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertFalse('repository' in rsp['review_request']['links']) # See if we can fetch this. Also return it for use in other # unit tests. review_request = ReviewRequest.objects.get( pk=rsp['review_request']['id']) self.assertEqual(review_request.repository, None)
def test_post_with_site_invalid_repository_error(self): """Testing the POST review-requests/ API with a local site and Invalid Repository error """ repository = self.create_repository() self._login_user(local_site=True) rsp = self.apiPost( get_review_request_list_url(self.local_site_name), {'repository': repository.path}, expected_status=400) self.assertEqual(rsp['stat'], 'fail') self.assertEqual(rsp['err']['code'], INVALID_REPOSITORY.code)
def test_post_with_submit_as_and_permission_denied_error(self): """Testing the POST review-requests/?submit_as= API with Permission Denied error """ repository = self.create_repository() rsp = self.apiPost(get_review_request_list_url(), { 'repository': repository.path, 'submit_as': 'doc', }, expected_status=403) self.assertEqual(rsp['stat'], 'fail') self.assertEqual(rsp['err']['code'], PERMISSION_DENIED.code)
def test_get_reviewrequests_with_to_groups(self): """Testing the GET review-requests/?to-groups= API""" group = self.create_review_group(name='devgroup') self.create_review_request(publish=True) review_request = self.create_review_request(publish=True) review_request.target_groups.add(group) rsp = self.apiGet(get_review_request_list_url(), { 'to-groups': 'devgroup', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1)
def test_post_with_no_repository(self): """Testing the POST review-requests/ API with no repository""" rsp = self.apiPost( get_review_request_list_url(), expected_mimetype=review_request_item_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertFalse('repository' in rsp['review_request']['links']) # See if we can fetch this. Also return it for use in other # unit tests. review_request = ReviewRequest.objects.get( pk=rsp['review_request']['id']) self.assertEqual(review_request.repository, None)
def setup_basic_post_test(self, user, with_local_site, local_site_name, post_valid_data): if post_valid_data: repository = \ self.create_repository(with_local_site=with_local_site) post_data = { 'repository': repository.path, } else: post_data = {} return (get_review_request_list_url(local_site_name), review_request_item_mimetype, post_data, [])
def test_post_with_repository_name(self): """Testing the POST review-requests/ API with a repository name""" repository = self.create_repository() rsp = self.apiPost(get_review_request_list_url(), {'repository': repository.name}, expected_mimetype=review_request_item_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['review_request']['links']['repository']['href'], self.base_url + get_repository_item_url(repository)) # See if we can fetch this. Also return it for use in other # unit tests. return ReviewRequest.objects.get(pk=rsp['review_request']['id'])
def test_get_with_to_groups(self): """Testing the GET review-requests/?to-groups= API""" group = self.create_review_group(name='devgroup') self.create_review_request(publish=True) review_request = self.create_review_request(publish=True) review_request.target_groups.add(group) rsp = self.apiGet(get_review_request_list_url(), { 'to-groups': 'devgroup', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1)
def test_post_with_repository_name(self): """Testing the POST review-requests/ API with a repository name""" repository = self.create_repository() rsp = self.apiPost( get_review_request_list_url(), {'repository': repository.name}, expected_mimetype=review_request_item_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( rsp['review_request']['links']['repository']['href'], self.base_url + get_repository_item_url(repository)) # See if we can fetch this. Also return it for use in other # unit tests. return ReviewRequest.objects.get(pk=rsp['review_request']['id'])
def test_get_with_to_groups_and_counts_only(self): """Testing the GET review-requests/?to-groups=&counts-only=1 API""" group = self.create_review_group(name='devgroup') review_request = self.create_review_request(publish=True) review_request.target_groups.add(group) review_request = self.create_review_request(publish=True) review_request.target_groups.add(group) rsp = self.apiGet(get_review_request_list_url(), { 'to-groups': 'devgroup', 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], 2)
def test_get_reviewrequests_with_to_groups_and_counts_only(self): """Testing the GET review-requests/?to-groups=&counts-only=1 API""" group = self.create_review_group(name='devgroup') review_request = self.create_review_request(publish=True) review_request.target_groups.add(group) review_request = self.create_review_request(publish=True) review_request.target_groups.add(group) rsp = self.apiGet(get_review_request_list_url(), { 'to-groups': 'devgroup', 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], 2)
def test_get_with_ship_it_1(self): """Testing the GET review-requests/?ship-it=1 API""" self.create_review_request(publish=True) review_request = self.create_review_request(publish=True) self.create_review(review_request, ship_it=True, publish=True) rsp = self.apiGet(get_review_request_list_url(), { 'ship-it': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1) q = ReviewRequest.objects.public(user=self.user, status='P', extra_query=Q(shipit_count__gt=0)) self.assertEqual(len(rsp['review_requests']), q.count())
def test_get_with_to_users(self): """Testing the GET review-requests/?to-users= API""" grumpy = User.objects.get(username='******') self.create_review_request(publish=True) review_request = self.create_review_request(publish=True) review_request.target_people.add(grumpy) review_request = self.create_review_request(publish=True) review_request.target_people.add(grumpy) rsp = self.apiGet(get_review_request_list_url(), { 'to-users': 'grumpy', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 2)
def test_get_reviewrequests_with_ship_it_1(self): """Testing the GET review-requests/?ship-it=1 API""" self.create_review_request(publish=True) review_request = self.create_review_request(publish=True) self.create_review(review_request, ship_it=True, publish=True) rsp = self.apiGet(get_review_request_list_url(), { 'ship-it': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1) q = ReviewRequest.objects.public(user=self.user, status='P', extra_query=Q(shipit_count__gt=0)) self.assertEqual(len(rsp['review_requests']), q.count())
def test_get_reviewrequests_with_to_users(self): """Testing the GET review-requests/?to-users= API""" grumpy = User.objects.get(username='******') self.create_review_request(publish=True) review_request = self.create_review_request(publish=True) review_request.target_people.add(grumpy) review_request = self.create_review_request(publish=True) review_request.target_people.add(grumpy) rsp = self.apiGet(get_review_request_list_url(), { 'to-users': 'grumpy', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 2)
def test_get_reviewrequests_with_to_users_and_counts_only(self): """Testing the GET review-requests/?to-users=&counts-only=1 API""" grumpy = User.objects.get(username='******') self.create_review_request(publish=True) review_request = self.create_review_request(publish=True) review_request.target_people.add(grumpy) review_request = self.create_review_request(publish=True) review_request.target_people.add(grumpy) rsp = self.apiGet(get_review_request_list_url(), { 'to-users': 'grumpy', 'counts-only': 1, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(rsp['count'], 2)
def setup_basic_get_test(self, user, with_local_site, local_site_name, populate_items): if populate_items: if not with_local_site: LocalSite.objects.create(name=self.local_site_name) items = [ self.create_review_request(publish=True, submitter=user, with_local_site=with_local_site), ] self.create_review_request(publish=True, submitter=user, with_local_site=not with_local_site) else: items = [] return (get_review_request_list_url(local_site_name), review_request_list_mimetype, items)
def test_get_reviewrequest_with_repository_and_changenum(self): """Testing the GET review-requests/?repository=&changenum= API""" review_request = self.create_review_request(create_repository=True, publish=True) review_request.changenum = 1234 review_request.save() rsp = self.apiGet(get_review_request_list_url(), { 'repository': review_request.repository.id, 'changenum': review_request.changenum, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1) self.assertEqual(rsp['review_requests'][0]['id'], review_request.display_id) self.assertEqual(rsp['review_requests'][0]['summary'], review_request.summary) self.assertEqual(rsp['review_requests'][0]['changenum'], review_request.changenum) self.assertEqual(rsp['review_requests'][0]['commit_id'], review_request.commit)
def test_get_with_to_users_directly_and_status(self): """Testing the GET review-requests/?to-users-directly=&status= API""" url = get_review_request_list_url() rsp = self.apiGet(url, { 'status': 'submitted', 'to-users-directly': 'doc' }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( len(rsp['review_requests']), ReviewRequest.objects.to_user_directly("doc", status='S').count()) rsp = self.apiGet(url, { 'status': 'discarded', 'to-users-directly': 'doc' }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( len(rsp['review_requests']), ReviewRequest.objects.to_user_directly("doc", status='D').count())
def test_get_with_from_user_and_status(self): """Testing the GET review-requests/?from-user=&status= API""" url = get_review_request_list_url() rsp = self.apiGet(url, { 'status': 'submitted', 'from-user': '******', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( len(rsp['review_requests']), ReviewRequest.objects.from_user("grumpy", status='S').count()) rsp = self.apiGet(url, { 'status': 'discarded', 'from-user': '******', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( len(rsp['review_requests']), ReviewRequest.objects.from_user("grumpy", status='D').count())
def test_get_reviewrequests_with_to_users_directly_and_status(self): """Testing the GET review-requests/?to-users-directly=&status= API""" url = get_review_request_list_url() rsp = self.apiGet(url, { 'status': 'submitted', 'to-users-directly': 'doc' }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( len(rsp['review_requests']), ReviewRequest.objects.to_user_directly("doc", status='S').count()) rsp = self.apiGet(url, { 'status': 'discarded', 'to-users-directly': 'doc' }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( len(rsp['review_requests']), ReviewRequest.objects.to_user_directly("doc", status='D').count())
def test_get_with_repository_and_changenum(self): """Testing the GET review-requests/?repository=&changenum= API""" review_request = self.create_review_request(create_repository=True, publish=True) review_request.changenum = 1234 review_request.save() rsp = self.apiGet(get_review_request_list_url(), { 'repository': review_request.repository.id, 'changenum': review_request.changenum, }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual(len(rsp['review_requests']), 1) self.assertEqual(rsp['review_requests'][0]['id'], review_request.display_id) self.assertEqual(rsp['review_requests'][0]['summary'], review_request.summary) self.assertEqual(rsp['review_requests'][0]['changenum'], review_request.changenum) self.assertEqual(rsp['review_requests'][0]['commit_id'], review_request.commit)
def test_get_reviewrequests_with_from_user_and_status(self): """Testing the GET review-requests/?from-user=&status= API""" url = get_review_request_list_url() rsp = self.apiGet(url, { 'status': 'submitted', 'from-user': '******', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( len(rsp['review_requests']), ReviewRequest.objects.from_user("grumpy", status='S').count()) rsp = self.apiGet(url, { 'status': 'discarded', 'from-user': '******', }, expected_mimetype=review_request_list_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( len(rsp['review_requests']), ReviewRequest.objects.from_user("grumpy", status='D').count())
def _test_post_with_submit_as(self, local_site=None): submit_as_username = '******' self.assertNotEqual(self.user.username, submit_as_username) if local_site: local_site_name = local_site.name local_site.users.add(User.objects.get(username=submit_as_username)) else: local_site_name = None rsp = self.apiPost(get_review_request_list_url(local_site_name), { 'submit_as': submit_as_username, }, expected_mimetype=review_request_item_mimetype) self.assertEqual(rsp['stat'], 'ok') self.assertEqual( rsp['review_request']['links']['submitter']['href'], self.base_url + get_user_item_url(submit_as_username, local_site_name)) ReviewRequest.objects.get(pk=rsp['review_request']['id'])
def setup_basic_get_test(self, user, with_local_site, local_site_name, populate_items): if populate_items: if not with_local_site: LocalSite.objects.create(name=self.local_site_name) items = [ self.create_review_request( publish=True, submitter=user, with_local_site=with_local_site), ] self.create_review_request(publish=True, submitter=user, with_local_site=not with_local_site) else: items = [] return (get_review_request_list_url(local_site_name), review_request_list_mimetype, items)