def test_group_delete(self): values_before = { "gid": self.gid, "user_id": "user_id", "project_id": "project_id", "display_name": "My_group", "display_description": "This is my group.", "status": "active" } db.group_create(self.user_ctxt, values_before) deleted_group = db.group_delete(self.ctxt, self.gid) self.assertEqual(deleted_group["deleted"], 1) self.assertEqual(deleted_group["status"], "DELETING") self.assertIsNotNone(deleted_group.get("deleted_at"))
def _create_group(self, values, user_id=None, project_id=None): user_ctxt = context.RequestContext(user_id, project_id) values['gid'] = unicode(uuid.uuid4()) values['user_id'] = user_id values['project_id'] = project_id v = self._get_base_values() v.update(values) return db.group_create(user_ctxt, v)
def _create_group(self, gid): values = { "gid": gid, "user_id": self.user_ctxt.user_id, "project_id": self.user_ctxt.project_id, "display_name": "test_group", "dsplay_description": "This is test group.", "is_default": False, "status": "ACTIVE" } return db.group_create(self.user_ctxt, values)
def test_group_create(self): values = { "gid": "12345678-1234-5678-9123-123456789012", "user_id": "user", "project_id": "user", "display_name": "test_group", "display_description": "This is test group", "status": "active" } group = db.group_create(self.user_ctxt, values) ignored_keys = ['deleted', 'deleted_at', 'updated_at', 'created_at'] values.update({"user_id": "user", "project_id": "user", "status": "active"}) self.assertIsNotNone(group['gid']) self._assertEqualObjects(group, values, ignored_keys)
def create(self, req, body): def _validate(body): if not self.is_valid_body(body, 'group'): msg = _("Invalid request body") raise exception.InvalidInput(reason=msg) values = body["group"] name = values.get("name") description = values.get("description") if not name: msg = _("Group name is required") raise exception.InvalidInput(reason=msg) if isinstance(name, six.string_types): name = name.strip() utils.check_string_length(name, 'name', min_length=1, max_length=255) if description: utils.check_string_length(description, 'description', min_length=0, max_length=255) valid_values = {} valid_values["display_name"] = name valid_values["display_description"] = description return valid_values try: values = _validate(body) except exception.InvalidInput as exc: raise webob.exc.HTTPBadRequest(explanation=exc.format_message()) context = req.environ['rack.context'] values["gid"] = unicode(uuid.uuid4()) values["user_id"] = context.user_id values["project_id"] = context.project_id values["status"] = "ACTIVE" group = db.group_create(context, values) return self._view_builder.create(group)
def test_group_update(self): values_before = { "gid": "12345678-1234-5678-9123-123456789012", "user_id": "user", "project_id": "user", "display_name": "My_group", "display_description": "This is my group.", "status": "active" } group_before = db.group_create(self.user_ctxt, values_before) values = { "gid": group_before["gid"], "display_name": "My_group_updated", "display_description": "This is my group updated." } group = db.group_update(self.user_ctxt, values) ignored_keys = ['deleted', 'deleted_at', 'updated_at', 'created_at', "user_id", "project_id", "status"] self._assertEqualObjects(group, values, ignored_keys)
def test_group_update_gid_not_found(self): # test values_before = { "gid": "12345678-1234-5678-9123-123456789012", "user_id": "user", "project_id": "user", "display_name": "My_group", "display_description": "This is my group.", "status": "active" } group_before = db.group_create(self.user_ctxt, values_before) values = { "gid": group_before["gid"] + "not-found", "display_name": "My_group_updated", "display_description": "This is my group updated." } try: db.group_update(self.user_ctxt, values) except Exception as e: status_code = e.code self.assertEqual(status_code, 404)