]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Adds test scripts for _validate_range
authorZhongyue Luo <zhongyue.nah@intel.com>
Fri, 9 Nov 2012 04:48:19 +0000 (12:48 +0800)
committerZhongyue Luo <zhongyue.nah@intel.com>
Sun, 11 Nov 2012 08:33:08 +0000 (16:33 +0800)
Shortened _validate_range logic
Wrote unittests for _validate_range

Change-Id: I9fc69dd6c37f9c08c3112c1a14cdcdb26194f17a

quantum/api/v2/attributes.py
quantum/tests/unit/test_attributes.py

index 77e8e4692ea2871ab665cba2ac44066c2bcc5773..7decaad6e6495d4fb9401ba00b234fcb90c9fd14 100644 (file)
@@ -64,12 +64,9 @@ def _validate_string(data, max_len=None):
 def _validate_range(data, valid_values=None):
     min_value = valid_values[0]
     max_value = valid_values[1]
-    if data >= min_value and data <= max_value:
-        return
-    else:
-        msg_dict = dict(data=data, min_value=min_value, max_value=max_value)
-        msg = _("%(data)s is not in range %(min_value)s through "
-                "%(max_value)s") % msg_dict
+    if not min_value <= data <= max_value:
+        msg = _("'%(data)s' is not in range %(min_value)s through "
+                "%(max_value)s") % locals()
         LOG.debug("validate_range: %s", msg)
         return msg
 
index d73aeaa2e39d748148dd57b8095916bcbba5688e..ef8ec97a8547252d12aa88849ed0fb7af90d7b58 100644 (file)
@@ -89,6 +89,31 @@ class TestAttributes(unittest2.TestCase):
         msg = attributes._validate_string("1234567890", 9)
         self.assertIsNotNone(msg)
 
+    def test_range(self):
+        msg = attributes._validate_range(1, [1, 9])
+        self.assertIsNone(msg)
+
+        msg = attributes._validate_range(5, [1, 9])
+        self.assertIsNone(msg)
+
+        msg = attributes._validate_range(9, [1, 9])
+        self.assertIsNone(msg)
+
+        msg = attributes._validate_range(1, (1, 9))
+        self.assertIsNone(msg)
+
+        msg = attributes._validate_range(5, (1, 9))
+        self.assertIsNone(msg)
+
+        msg = attributes._validate_range(9, (1, 9))
+        self.assertIsNone(msg)
+
+        msg = attributes._validate_range(0, [1, 9])
+        self.assertEquals(msg, "'0' is not in range 1 through 9")
+
+        msg = attributes._validate_range(10, (1, 9))
+        self.assertEquals(msg, "'10' is not in range 1 through 9")
+
     def test_ip_pools(self):
         pools = [[{'end': '10.0.0.254'}],
                  [{'start': '10.0.0.254'}],