--- a/server/python/django2/renkanmanager/tests/v1_0/tests_renkan.py Wed Jun 15 16:31:43 2016 +0200
+++ b/server/python/django2/renkanmanager/tests/v1_0/tests_renkan.py Mon Jun 20 14:44:40 2016 +0200
@@ -142,7 +142,7 @@
new_renkan = Renkan.objects.get(renkan_guid=new_renkan_guid)
# GUIDs and username
self.assertEqual(self.test_workspace_guid, post_response_dict.get("workspace_id", ""))
- self.assertEqual(self.test_workspace_guid, new_renkan.workspace.workspace_guid)
+ self.assertEqual(self.test_workspace_guid, str(new_renkan.workspace.workspace_guid))
self.assertEqual(getattr(self.user, User.USERNAME_FIELD), post_response_dict.get("created_by", ""))
self.assertEqual(getattr(self.user, User.USERNAME_FIELD), post_response_dict.get("last_updated_by", ""))
self.assertEqual(getattr(self.user, User.USERNAME_FIELD), getattr(new_renkan.creator, User.USERNAME_FIELD))
@@ -176,8 +176,19 @@
data = {"title": self.third_test_title, "content": self.third_test_content}
post_response = self.client.post(post_url, data, format="json")
+ self.assertEqual(post_response.status_code, status.HTTP_400_BAD_REQUEST)
+
+ ###################################################
+ # POSTing with wrong workspace_guid
+ ###################################################
+
+ post_url = reverse("v1.0:renkan_list_workspace", kwargs={"workspace_guid": "00000000-0000-0000-0000-000000000000"})
+ data = {"title": self.third_test_title, "content": self.third_test_content}
+
+ post_response = self.client.post(post_url, data, format="json")
self.assertEqual(post_response.status_code, status.HTTP_404_NOT_FOUND)
+
###################################################
# POSTing with non-JSON serializable content
###################################################
@@ -223,8 +234,17 @@
get_url = reverse("v1.0:renkan_detail", kwargs={"renkan_guid": "bad-id"})
get_response = self.client.get(get_url, format="json")
+ self.assertEqual(get_response.status_code, status.HTTP_400_BAD_REQUEST)
+
+ ###################################################
+ # GETting with wrong guid
+ ###################################################
+
+ get_url = reverse("v1.0:renkan_detail", kwargs={"renkan_guid": "00000000-0000-0000-0000-000000000000"})
+ get_response = self.client.get(get_url, format="json")
self.assertEqual(get_response.status_code, status.HTTP_404_NOT_FOUND)
+
def test_get_renkan_list(self):
###################################################
@@ -300,7 +320,7 @@
"create_new_revision": False
}
put_response = self.client.put(put_url, put_data, format="json")
- self.assertEqual(put_response.status_code, status.HTTP_200_OK)
+ self.assertEqual(put_response.status_code, status.HTTP_200_OK, "response is %r"%put_response.content)
put_response_dict = json.loads(put_response.content.decode())
put_response_content_dict = json.loads(put_response_dict.get("content", "{}"))
put_response_ts = put_response_content_dict.get("updated", "")
@@ -311,7 +331,7 @@
self.assertEqual(put_response_dict.get("revision_count", ""), 1)
self.assertEqual(updated_project.revision_count, 1)
- self.assertEqual(revision_guid, updated_project.current_revision.revision_guid)
+ self.assertEqual(revision_guid, str(updated_project.current_revision.revision_guid))
# checking data was updated
# in the reponse
self.assertEqual(put_response_dict.get("title", ""), self.first_test_title)
@@ -339,7 +359,7 @@
"create_new_revision": True
}
put_response = self.client.put(put_url, put_data, format="json")
- self.assertEqual(put_response.status_code, status.HTTP_200_OK)
+ self.assertEqual(put_response.status_code, status.HTTP_200_OK, "response is %r"%put_response.content)
put_response_dict = json.loads(put_response.content.decode())
put_response_content_dict = json.loads(put_response_dict.get("content", "{}"))
put_response_ts = put_response_content_dict.get("updated", "")
@@ -354,7 +374,7 @@
self.assertEqual(updated_project.revision_count, 2)
# checking project now points towards new revision
- self.assertEqual(updated_project.current_revision.revision_guid, created_revision_guid)
+ self.assertEqual(str(updated_project.current_revision.revision_guid), created_revision_guid)
# checking data was updated
# in the reponse
self.assertEqual(put_response_dict.get("title", ""), self.second_test_title)
@@ -387,7 +407,7 @@
put_url = reverse("v1.0:renkan_detail", kwargs={"renkan_guid": "bad-id"})
put_response = self.client.put(put_url, {}, format="json")
- self.assertEqual(put_response.status_code, status.HTTP_404_NOT_FOUND)
+ self.assertEqual(put_response.status_code, status.HTTP_400_BAD_REQUEST)
def test_copy_renkan(self):
@@ -545,15 +565,26 @@
###################################################
bad_copy_data = {"source_revision_id": "bleh_bad_id"}
+ bad_copy_data_guid = {"source_revision_id": "00000000-0000-0000-0000-000000000000"}
+
# with query arg
qarg_bad_copy_url = post_url+"?source_revision_id=bleh_bad_id"
qarg_bad_copy_response = self.client.post(qarg_bad_copy_url, {}, format="json")
+ self.assertEqual(qarg_bad_copy_response.status_code, status.HTTP_400_BAD_REQUEST)
+ # with query arg
+ qarg_bad_copy_url = post_url+"?source_revision_id=00000000-0000-0000-0000-000000000000"
+ qarg_bad_copy_response = self.client.post(qarg_bad_copy_url, {}, format="json")
self.assertEqual(qarg_bad_copy_response.status_code, status.HTTP_404_NOT_FOUND)
# with data
data_bad_copy_url = post_url
data_bad_copy_response = self.client.post(data_bad_copy_url, bad_copy_data, format="json")
+ self.assertEqual(data_bad_copy_response.status_code, status.HTTP_400_BAD_REQUEST)
+
+ data_bad_copy_url = post_url
+ data_bad_copy_response = self.client.post(data_bad_copy_url, bad_copy_data_guid, format="json")
self.assertEqual(data_bad_copy_response.status_code, status.HTTP_404_NOT_FOUND)
+
def test_delete_renkan(self):
###################################################
@@ -614,4 +645,12 @@
delete_url = reverse("v1.0:renkan_detail", kwargs={"renkan_guid": "bad-id"})
delete_response = self.client.delete(delete_url, format="json")
+ self.assertEqual(delete_response.status_code, status.HTTP_400_BAD_REQUEST)
+
+ ###################################################
+ # Try to DELETE renkan with wrong guid
+ ###################################################
+
+ delete_url = reverse("v1.0:renkan_detail", kwargs={"renkan_guid": "00000000-0000-0000-0000-000000000000"})
+ delete_response = self.client.delete(delete_url, format="json")
self.assertEqual(delete_response.status_code, status.HTTP_404_NOT_FOUND)