Exemplo n.º 1
0
 def test_deserialize_binding_max_size_binding_id_should_fail(self):
     # We need to do import here in order generic patches work
     rules = {
         'class_name':
         'cli',
         'origin':
         'test',
         'binding_rules': [{
             "bindings": [
                 "51c577679078b9023b3a2c4b51c577679078b9023b3a2c4b51c577679078b902"
             ],
             "group_rules": [{
                 'operation': 'eq',
                 'input_context_param': 'ob',
                 'value': ['es']
             }, {
                 'operation': 'range',
                 'input_context_param': 'uuid',
                 'value': [1, 20]
             }]
         }]
     }
     serializer = BindingsSerializer(data=rules)
     self.assertEquals(False, serializer.is_valid(),
                       "Deserialization invalid")
     self.assertEquals('invalid',
                       serializer.errors['binding_rules'][0]['bindings'][0])
Exemplo n.º 2
0
 def test_deserialize_binding_should_work(self):
     # We need to do import here in order generic patches work
     rules = {
         'class_name':
         'cli',
         'origin':
         'test',
         'binding_rules': [{
             "bindings": ["51c577679078b9023b3a2c4b"],
             "group_rules": [{
                 'operation': 'eq',
                 'input_context_param': 'ob',
                 'value': ['es']
             }, {
                 'operation': 'range',
                 'input_context_param': 'uuid',
                 'value': [1, 20]
             }]
         }]
     }
     serializer = BindingsSerializer(data=rules)
     self.assertEquals(True, serializer.is_valid(),
                       "Deserialization invalid")
     des_object = serializer.object
     self.assertEquals('cli', des_object['class_name'])
     self.assertEquals('test', des_object['origin'])
Exemplo n.º 3
0
 def test_deserialize_binding_without_group_rules_should_work(self):
     # We need to do import here in order generic patches work
     rules = {
         'class_name': 'cli',
         'origin': 'test',
         'binding_rules': [{
             "bindings": ["51c577679078b9023b3a2c4b"]
         }]
     }
     serializer = BindingsSerializer(data=rules)
     self.assertEquals(True, serializer.is_valid(),
                       "Deserialization invalid")
     des_object = serializer.object
     self.assertEquals('cli', des_object['class_name'])
     self.assertEquals('test', des_object['origin'])
Exemplo n.º 4
0
 def test_deserialize_binding_in_empty_values_should_give_error(self):
     # We need to do import here in order generic patches work
     rules = {
         'class_name':
         'cli',
         'origin':
         'test',
         'binding_rules': [{
             "bindings": ["51c577679078b9023b3a2c4b"],
             "group_rules": [{
                 'operation': 'in',
                 'input_context_param': 'ob',
                 'value': ["", "es"]
             }]
         }]
     }
     serializer = BindingsSerializer(data=rules)
     self.assertEquals(False, serializer.is_valid())
     self.assertEquals(
         u'invalid', serializer.errors['binding_rules'][0]['group_rules'][0]
         ['value'][0], 'Invalid error message')
Exemplo n.º 5
0
 def test_deserialize_binding_no_mandatory_params_should_give_error(self):
     # We need to do import here in order generic patches work
     rules = {
         'class_name':
         'cli',
         'origin':
         'test',
         'binding_rules': [{
             "bindings": ["51c577679078b9023b3a2c4b"],
             "group_rules": [{
                 'operation': 'eq',
                 'input_context_param': 'ob',
                 'value': ['es']
             }, {
                 'operation': 'range',
                 'input_context_param': 'uuid',
                 'value': [1, 20]
             }]
         }]
     }
     class_name = rules.pop('class_name')
     serializer = BindingsSerializer(data=rules)
     self.assertEquals(False, serializer.is_valid(),
                       "Deserialization invalid")
     self.assertEquals('required', serializer.errors['class_name'][0],
                       'Invalid error message')
     rules.pop('origin')
     rules['class_name'] = class_name
     serializer = BindingsSerializer(data=rules)
     self.assertEquals(False, serializer.is_valid(),
                       "Deserialization invalid")
     self.assertEquals('required', serializer.errors['origin'][0],
                       'Invalid error message')
Exemplo n.º 6
0
 def test_deserialize_binding_regex_invalid_should_give_error(self):
     # We need to do import here in order generic patches work
     rules = {
         'class_name':
         'cli',
         'origin':
         'test',
         'binding_rules': [{
             "bindings": ["51c577679078b9023b3a2c4b"],
             "group_rules": [{
                 'operation': 'regex',
                 'input_context_param': 'ob',
                 'value': ["*"]
             }]
         }]
     }
     serializer = BindingsSerializer(data=rules)
     self.assertEquals(False, serializer.is_valid())
     self.assertEquals(
         "Invalid parameter value: ['*']",
         serializer.errors['binding_rules'][0]['group_rules'][0]['value']
         [0])