From 02c9c524c06857924117cdb7f11ecc02f4bdce9e Mon Sep 17 00:00:00 2001 From: Ken'ichi Ohmichi Date: Thu, 10 Sep 2015 08:24:56 +0000 Subject: [PATCH] Add microversions schema unit test for None This patch adds a microversions schema unit test for passing None as min_version of schema() decorator. Change-Id: I7d05e6331c07c659f6a97267579f154a7be269f6 --- nova/tests/unit/test_api_validation.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/nova/tests/unit/test_api_validation.py b/nova/tests/unit/test_api_validation.py index 3f5a74c71071..b8010fe69175 100644 --- a/nova/tests/unit/test_api_validation.py +++ b/nova/tests/unit/test_api_validation.py @@ -90,6 +90,29 @@ class MicroversionsSchemaTestCase(APIValidationTestCase): self.check_validation_error(self.post, body={'foo': 'bar'}, expected_detail=detail, req=req) + def test_validate_v2compatible_request_with_none_min_version(self): + schema_none = { + 'type': 'object', + 'properties': { + 'foo': { + 'type': 'integer' + } + } + } + + @validation.schema(schema_none) + def post(req, body): + return 'Validation succeeded.' + + req = FakeRequest() + req.legacy_v2 = True + self.assertEqual('Validation succeeded.', + post(body={'foo': 1}, req=req)) + detail = ("Invalid input for field/attribute foo. Value: bar. " + "'bar' is not of type 'integer'") + self.check_validation_error(post, body={'foo': 'bar'}, + expected_detail=detail, req=req) + class RequiredDisableTestCase(APIValidationTestCase):