Changeset View
Changeset View
Standalone View
Standalone View
swh/web/tests/admin/test_origin_save.py
Show First 20 Lines • Show All 115 Lines • ▼ Show 20 Lines | def test_remove_unauthorized_origin_url(self): | ||||
self.client.login(username=_user_name, password=_user_password) | self.client.login(username=_user_name, password=_user_password) | ||||
response = self.client.post(url) | response = self.client.post(url) | ||||
self.assertEqual(response.status_code, 200) | self.assertEqual(response.status_code, 200) | ||||
self.assertEqual(can_save_origin(_unauthorized_origin_url), | self.assertEqual(can_save_origin(_unauthorized_origin_url), | ||||
SAVE_REQUEST_PENDING) | SAVE_REQUEST_PENDING) | ||||
@patch('swh.web.common.origin_save.scheduler') | @patch('swh.web.common.origin_save.scheduler') | ||||
def test_accept_pending_save_request(self, mock_scheduler): | def test_accept_pending_save_request(self, mock_scheduler): | ||||
origin_type = 'git' | visit_type = 'git' | ||||
origin_url = 'https://v2.pikacode.com/bthate/botlib.git' | origin_url = 'https://v2.pikacode.com/bthate/botlib.git' | ||||
save_request_url = reverse('api-1-save-origin', | save_request_url = reverse('api-1-save-origin', | ||||
url_args={'origin_type': origin_type, | url_args={'visit_type': visit_type, | ||||
'origin_url': origin_url}) | 'origin_url': origin_url}) | ||||
response = self.client.post(save_request_url, data={}, | response = self.client.post(save_request_url, data={}, | ||||
content_type='application/x-www-form-urlencoded') # noqa | content_type='application/x-www-form-urlencoded') # noqa | ||||
self.assertEqual(response.status_code, 200) | self.assertEqual(response.status_code, 200) | ||||
self.assertEqual(response.data['save_request_status'], | self.assertEqual(response.data['save_request_status'], | ||||
SAVE_REQUEST_PENDING) | SAVE_REQUEST_PENDING) | ||||
accept_request_url = reverse('admin-origin-save-request-accept', | accept_request_url = reverse('admin-origin-save-request-accept', | ||||
url_args={'origin_type': origin_type, | url_args={'visit_type': visit_type, | ||||
'origin_url': origin_url}) | 'origin_url': origin_url}) | ||||
self.check_not_login(accept_request_url) | self.check_not_login(accept_request_url) | ||||
tasks_data = [ | tasks_data = [ | ||||
{ | { | ||||
'priority': 'high', | 'priority': 'high', | ||||
'policy': 'oneshot', | 'policy': 'oneshot', | ||||
Show All 20 Lines | def test_accept_pending_save_request(self, mock_scheduler): | ||||
self.assertEqual(response.status_code, 200) | self.assertEqual(response.status_code, 200) | ||||
self.assertEqual(response.data[0]['save_request_status'], | self.assertEqual(response.data[0]['save_request_status'], | ||||
SAVE_REQUEST_ACCEPTED) | SAVE_REQUEST_ACCEPTED) | ||||
self.assertEqual(response.data[0]['save_task_status'], | self.assertEqual(response.data[0]['save_task_status'], | ||||
SAVE_TASK_NOT_YET_SCHEDULED) | SAVE_TASK_NOT_YET_SCHEDULED) | ||||
@patch('swh.web.common.origin_save.scheduler') | @patch('swh.web.common.origin_save.scheduler') | ||||
def test_reject_pending_save_request(self, mock_scheduler): | def test_reject_pending_save_request(self, mock_scheduler): | ||||
origin_type = 'git' | visit_type = 'git' | ||||
origin_url = 'https://wikipedia.com' | origin_url = 'https://wikipedia.com' | ||||
save_request_url = reverse('api-1-save-origin', | save_request_url = reverse('api-1-save-origin', | ||||
url_args={'origin_type': origin_type, | url_args={'visit_type': visit_type, | ||||
'origin_url': origin_url}) | 'origin_url': origin_url}) | ||||
response = self.client.post(save_request_url, data={}, | response = self.client.post(save_request_url, data={}, | ||||
content_type='application/x-www-form-urlencoded') # noqa | content_type='application/x-www-form-urlencoded') # noqa | ||||
self.assertEqual(response.status_code, 200) | self.assertEqual(response.status_code, 200) | ||||
self.assertEqual(response.data['save_request_status'], | self.assertEqual(response.data['save_request_status'], | ||||
SAVE_REQUEST_PENDING) | SAVE_REQUEST_PENDING) | ||||
reject_request_url = reverse('admin-origin-save-request-reject', | reject_request_url = reverse('admin-origin-save-request-reject', | ||||
url_args={'origin_type': origin_type, | url_args={'visit_type': visit_type, | ||||
'origin_url': origin_url}) | 'origin_url': origin_url}) | ||||
self.check_not_login(reject_request_url) | self.check_not_login(reject_request_url) | ||||
self.client.login(username=_user_name, password=_user_password) | self.client.login(username=_user_name, password=_user_password) | ||||
response = self.client.post(reject_request_url) | response = self.client.post(reject_request_url) | ||||
self.assertEqual(response.status_code, 200) | self.assertEqual(response.status_code, 200) | ||||
Show All 17 Lines | def test_reject_pending_save_request(self, mock_scheduler): | ||||
mock_scheduler.get_tasks.return_value = tasks_data | mock_scheduler.get_tasks.return_value = tasks_data | ||||
response = self.client.get(save_request_url) | response = self.client.get(save_request_url) | ||||
self.assertEqual(response.status_code, 200) | self.assertEqual(response.status_code, 200) | ||||
self.assertEqual(response.data[0]['save_request_status'], | self.assertEqual(response.data[0]['save_request_status'], | ||||
SAVE_REQUEST_REJECTED) | SAVE_REQUEST_REJECTED) | ||||
def test_remove_save_request(self): | def test_remove_save_request(self): | ||||
sor = SaveOriginRequest.objects.create(origin_type='git', | sor = SaveOriginRequest.objects.create(visit_type='git', | ||||
origin_url='https://wikipedia.com', # noqa | origin_url='https://wikipedia.com', # noqa | ||||
status=SAVE_REQUEST_PENDING) | status=SAVE_REQUEST_PENDING) | ||||
self.assertEqual(SaveOriginRequest.objects.count(), 1) | self.assertEqual(SaveOriginRequest.objects.count(), 1) | ||||
remove_request_url = reverse('admin-origin-save-request-remove', | remove_request_url = reverse('admin-origin-save-request-remove', | ||||
url_args={'sor_id': sor.id}) | url_args={'sor_id': sor.id}) | ||||
self.check_not_login(remove_request_url) | self.check_not_login(remove_request_url) | ||||
self.client.login(username=_user_name, password=_user_password) | self.client.login(username=_user_name, password=_user_password) | ||||
response = self.client.post(remove_request_url) | response = self.client.post(remove_request_url) | ||||
self.assertEqual(response.status_code, 200) | self.assertEqual(response.status_code, 200) | ||||
self.assertEqual(SaveOriginRequest.objects.count(), 0) | self.assertEqual(SaveOriginRequest.objects.count(), 0) |