def test_customer_get_his_request_detail(self): self.client.force_login(user=self.standard_user) response = self.client.get(self.get_request_details_url) self.assertEqual(response.status_code, status.HTTP_200_OK) data_list = [response.data, response.data.get('instance', None)] check_data_in_dict(self, self.expected_data_list, data_list) self.assertNotIn('admin_fill_in_survey', response.data.keys())
def _create_billing_group(self): response = self.client.post(self.create_billing_group_url, data=self.post_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_201_CREATED) check_data_in_dict(self, [self.post_data], [response.data]) self.assertIn("id", response.data) self.assertIn("name", response.data) self.assertIn("user_set", response.data)
def test_admin_put_on_request(self): response = self.client.put(self.get_request_details_url, data=self.put_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_200_OK) expected = self.put_data expected['user'] = UserSerializer(instance=self.standard_user).data check_data_in_dict(self, [expected], [response.data])
def test_admin_put_user(self): old_password = self.standard_user.password response = self.client.put(self.get_user_details_url, data=self.put_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_200_OK) self.standard_user.refresh_from_db() self.assertNotEqual(old_password, self.standard_user.password) check_data_in_dict(self, [self.expected_data], [response.data])
def test_admin_post_operation(self): number_tower_survey_field_before = TowerSurveyField.objects.all( ).count() response = self.client.post(self.get_operation_details_url, data=self.post_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_201_CREATED) check_data_in_dict(self, [self.post_data], [response.data]) number_field_in_survey = len(self.job_template_test.survey["spec"]) self.assertEqual( number_tower_survey_field_before + number_field_in_survey, TowerSurveyField.objects.all().count())
def test_admin_post_tower_server(self): response = self.client.post(self.tower_server_url, data=self.post_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_201_CREATED) check_data_in_dict(self, [self.post_data], [response.data]) tower_server = TowerServer.objects.last() self.assertEqual(tower_server.name, self.post_data['name']) self.assertEqual(tower_server.host, self.post_data['host']) self.assertEqual(tower_server.token, self.post_data['token']) self.assertEqual(tower_server.secure, self.post_data['secure']) self.assertEqual(tower_server.ssl_verify, self.post_data['ssl_verify'])
def test_admin_can_partially_update_survey(self): data = [{ 'name': 'text_variable', 'enabled': False, 'default': "text_variable_default" }, { 'name': 'multiplechoice_variable', 'enabled': True, 'default': "multiplechoice_variable_default" }] response = self.client.put(self.get_operation_survey_put_url, data=data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_200_OK) check_data_in_dict(self, data, response.data) self._validate_field_in_db(data)
def test_admin_create_spec(self): if self.target_spec == "spec": self.assertEqual(self.test_instance.spec, {}) else: self.assertEqual(self.test_instance.user_spec, {}) response = self.client.post(self.get_spec_details_url, data=self.expected_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_201_CREATED) data_list = [response.data] check_data_in_dict(self, self.expected_data_list, data_list) self.test_instance.refresh_from_db() if self.target_spec == "spec": self.assertEqual(self.test_instance.spec, self.expected_data) else: self.assertEqual(self.test_instance.user_spec, self.expected_data)
def test_admin_delete_spec(self): if self.target_spec == "spec": self.assertEqual(self.test_instance.spec, self.current_spec) else: self.assertEqual(self.test_instance.user_spec, self.current_user_spec) response = self.client.delete(self.get_spec_create_url, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT) data_list = [response.data] check_data_in_dict(self, self.expected_data_list, data_list) self.test_instance.refresh_from_db() if self.target_spec == "spec": self.assertEqual(self.test_instance.spec, {}) else: self.assertEqual(self.test_instance.user_spec, {})
def test_admin_post_service(self): response = self.client.post(self.get_service_details_url, data=self.post_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_201_CREATED) check_data_in_dict(self, [self.post_data], [response.data]) service = Service.objects.last() self.assertEqual(service.name, self.post_data['name']) self.assertEqual(service.billing_group_is_shown, self.post_data['billing_group_is_shown']) self.assertEqual(service.billing_group_is_selectable, self.post_data['billing_group_is_selectable']) self.assertEqual(service.billing_groups_are_restricted, self.post_data['billing_groups_are_restricted']) self.assertEqual(service.billing_group_id, self.post_data['billing_group_id'])
def test_admin_patch_spec(self): if self.target_spec == "spec": self.assertEqual(self.test_instance.spec, self.current_spec) response = self.client.patch(self.get_spec_details_url, data=self.expected_spec, content_type="application/json") else: self.assertEqual(self.test_instance.user_spec, self.current_user_spec) response = self.client.patch(self.get_spec_details_url, data=self.expected_user_spec, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_200_OK) data_list = [response.data] check_data_in_dict(self, [self.expected_data], data_list) self.test_instance.refresh_from_db() if self.target_spec == "spec": self.assertEqual(self.test_instance.spec, self.expected_data) else: self.assertEqual(self.test_instance.user_spec, self.expected_data)
def test_resource_group_details(self): response = self.client.get(self.url, format='json') self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertTrue("id" in response.json()) self.assertTrue("name" in response.json()) self.assertTrue("attribute_definitions" in response.json()) self.assertTrue("tags" in response.json()) self.assertEqual(response.json()["id"], self.rp_vcenter.id) self.assertEqual(response.json()["name"], self.rp_vcenter.name) self.assertEqual(len(response.json()["attribute_definitions"]), self.rp_vcenter.attribute_definitions.all().count()) expected_attributes = [{ "name": "vCPU", "over_commitment_producers": 1.0, "over_commitment_consumers": 1.0 }, { "name": "Memory", "over_commitment_producers": 1.0, "over_commitment_consumers": 1.0 }] check_data_in_dict(self, expected_attributes, response.json()["attribute_definitions"])
def test_admin_put_operation(self): response = self.client.put(self.get_operation_details_url, data=self.put_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_200_OK) check_data_in_dict(self, [self.put_data], [response.data])
def test_admin_get_tower_server_detail(self): response = self.client.get(self.tower_server_url) self.assertEqual(response.status_code, status.HTTP_200_OK) data_list = [response.data] self.assertNotIn("token", data_list) check_data_in_dict(self, self.expected_data_list, data_list)
def _create_quota_binding(self): response = self.client.post(self.create_quota_binding_url, data=self.post_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_201_CREATED) check_data_in_dict(self, [self.post_data], [response.data])
def test_admin_patch_billing_group(self): response = self.client.patch(self.get_billing_group_details_url, data=self.patch_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_200_OK) check_data_in_dict(self, [self.expected_data], [response.data])
def test_admin_get_billing_group_detail(self): response = self.client.get(self.get_billing_group_details_url) self.assertEqual(response.status_code, status.HTTP_200_OK) data_list = [response.data] check_data_in_dict(self, self.expected_data_list, data_list)
def test_admin_patch_tower_server(self): response = self.client.patch(self.tower_server_url, data=self.patch_data, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_200_OK) check_data_in_dict(self, [self.expected_data], [response.data])
def test_admin_get_spec_detail(self): response = self.client.get(self.get_spec_details_url, content_type="application/json") self.assertEqual(response.status_code, status.HTTP_200_OK) data_list = [response.data] check_data_in_dict(self, self.expected_data_list, data_list)
def test_customer_get_operation_detail(self): self.client.force_login(user=self.standard_user) response = self.client.get(self.get_operation_details_url) self.assertEqual(response.status_code, status.HTTP_200_OK) data_list = [response.data] check_data_in_dict(self, self.expected_data_list, data_list)
def test_admin_get_request_detail(self): response = self.client.get(self.get_request_details_url) self.assertEqual(response.status_code, status.HTTP_200_OK) data_list = [response.data, response.data.get('instance', None)] check_data_in_dict(self, self.expected_data_list, data_list) self.assertIn('admin_fill_in_survey', response.data.keys())