def test_validate_dict(self): v = n.ArgValidatorDict( 'dict', nested = [ n.ArgValidatorNum('i', required = True), n.ArgValidatorStr('s', required = False, default_value = 's_default'), n.ArgValidatorStr('l', required = False, default_value = n.ArgValidator.MISSING), ]) self.assertEqual( { 'i': 5, 's': 's_default', }, v.validate({ 'i': '5', }) ) self.assertEqual( { 'i': 5, 's': 's_default', 'l': '6', }, v.validate({ 'i': '5', 'l': '6', }) ) self.assertValidationError(v, { 'k': 1 })
def test_validate_int(self): v = n.ArgValidatorNum('state', default_value = None, numeric_type = float) self.assertEqual(1, v.validate(1)) self.assertEqual(1.5, v.validate(1.5)) self.assertEqual(1.5, v.validate("1.5")) self.assertValidationError(v, None) self.assertValidationError(v, "1a") v = n.ArgValidatorNum('state', default_value = None) self.assertEqual(1, v.validate(1)) self.assertEqual(1, v.validate(1.0)) self.assertEqual(1, v.validate("1")) self.assertValidationError(v, None) self.assertValidationError(v, None) self.assertValidationError(v, 1.5) self.assertValidationError(v, "1.5") v = n.ArgValidatorNum('state', required = True) self.assertValidationError(v, None)
def test_validate_list(self): v = n.ArgValidatorList( 'list', nested = n.ArgValidatorNum('i') ) self.assertEqual( [ 1, 5 ], v.validate([ '1', 5 ]) ) self.assertValidationError(v, [1, 's'])