Skip to content

Commit

Permalink
[FEATURES] Added xys isFloat
Browse files Browse the repository at this point in the history
  • Loading branch information
Adrien Delle Cave committed Oct 4, 2018
1 parent f87e789 commit ab6ec1d
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 3 deletions.
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
httpdis>=0.5.5
httpdis>=0.5.6
pyOpenSSL
python-magic
psutil>=2.1
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
from setuptools import find_packages, setup

requirements = [line.strip() for line in open('requirements.txt', 'r').readlines()]
version = '0.2.58'
version = '0.2.59'

if os.path.isfile('VERSION'):
version = open('VERSION', 'r').readline().strip() or version
Expand Down
20 changes: 19 additions & 1 deletion sonicprobe/libs/xys.py
Original file line number Diff line number Diff line change
Expand Up @@ -454,6 +454,23 @@ def isBool(nstr, schema):
return nstr in ('0', '1', False, True)


def isFloat(nstr, schema):
"""
!~~isFloat
"""
if isinstance(nstr, (float, int, long)):
return True
elif not isinstance(nstr, basestring):
return False

try:
float(nstr)
except ValueError:
return False

return True


def digit(nstr, schema):
"""
!~~digit
Expand Down Expand Up @@ -537,6 +554,7 @@ def regex(val, schema, name = None): # pylint: disable-msg=W0613
_add_validator_internal(startswith, u'!!str')
_add_validator_internal(prefixedDec, u'!!str')
_add_validator_internal(isBool, u'!!scalar')
_add_validator_internal(isFloat, u'!!scalar')
_add_validator_internal(digit, u'!!scalar')
_add_validator_internal(uint, u'!!scalar')
_add_validator_internal(callback, u'!!str')
Expand Down Expand Up @@ -831,7 +849,7 @@ def validate(document, schema, log_qualifier = True):

__all__ = [
'validate', 'load',
'seqlen', 'between', 'startswith', 'prefixedDec', 'isBool', 'digit', 'uint', 'callback', 'isIn', 'regex'
'seqlen', 'between', 'startswith', 'prefixedDec', 'isBool', 'isFloat', 'digit', 'uint', 'callback', 'isIn', 'regex'
'add_callback', 'add_list', 'add_modifier', 'add_regex', 'add_validator', 'add_parameterized_validator',
'ValidatorNode', 'Optional', 'OptionalNull', 'Mandatory',
]
Expand Down

0 comments on commit ab6ec1d

Please sign in to comment.