Exemple #1
0
 def test_validate(self, _run_validator):
     child = mock.MagicMock(autospec=fforms.schema.Schema([]))
     child.validate.side_effect = lambda x: x ** 2
     schema = fforms.schema.SequenceSchema(child)
     self.assertIs(schema.validate([1, 2, 3]), _run_validator.return_value)
     self.assertEqual(child.validate.call_args_list,
                      [mock.call(1), mock.call(2), mock.call(3)])
     _run_validator.assert_called_once_with(schema, [1, 4, 9])
Exemple #2
0
 def test_validate_no_data(self, _run_validator):
     children = {}
     for key in 'abc':
         children[key] = mock.MagicMock(autospec=fforms.schema.Schema)
         children[key].validate.side_effect = lambda x: x
     schema = fforms.schema.MapSchema(children)
     self.assertIs(schema.validate(None),
                   _run_validator.return_value)
     _run_validator.assert_called_once_with(
         schema, {'a': None, 'b': None, 'c': None})
     for child in children.values():
         child.validate.assert_called_once_with(None)
Exemple #3
0
 def test_validate(self, _run_validator):
     children = {}
     for key in 'abc':
         children[key] = mock.MagicMock(autospec=fforms.schema.Schema)
         children[key].validate.side_effect = lambda x, key=key: x % key
     schema = fforms.schema.MapSchema(children)
     self.assertIs(schema.validate({'a': 'A:%s', 'b': 'B:%s', 'c': 'C:%s'}),
                   _run_validator.return_value)
     _run_validator.assert_called_once_with(
         schema, {'a': 'A:a', 'b': 'B:b', 'c': 'C:c'})
     for key, child in children.items():
         child.validate.assert_called_once_with(key.upper() + ":%s")
Exemple #4
0
 def test_validate(self, _run_validator):
     data = mock.MagicMock()
     schema = fforms.schema.LeafSchema("funkyName")
     self.assertIs(schema.validate(data),
                   _run_validator.return_value)
     _run_validator.assert_called_once_with(schema, data)
Exemple #5
0
 def test_validate_no_data(self, _run_validator):
     child = mock.MagicMock(autospec=fforms.schema.Schema([]))
     schema = fforms.schema.SequenceSchema(child)
     self.assertIs(schema.validate(None), _run_validator.return_value)
     self.assertEqual(child.validate.call_count, 0)
     _run_validator.assert_called_once_with(schema, [])