Commit e144f582 by Mariusz Kupidura Committed by Marcin Bury

Integer validator (#235)

* Add ability to cast Option's value to integer

* Fix formatting.
parent 416a7661
...@@ -136,6 +136,16 @@ class ValidatorsTest(RoutersploitTestCase): ...@@ -136,6 +136,16 @@ class ValidatorsTest(RoutersploitTestCase):
value = "t" value = "t"
self.assertEqual(validators.boolify(value), True) self.assertEqual(validators.boolify(value), True)
def test_integer_1(self):
self.assertEqual(validators.integer('1'), 1)
def test_integer_2(self):
self.assertEqual(validators.integer('123'), 123)
def test_integer_3(self):
with self.assertRaises(OptionValidationError):
validators.integer('foobar')
if __name__ == '__main__': if __name__ == '__main__':
unittest.main() unittest.main()
...@@ -55,3 +55,11 @@ def boolify(value): ...@@ -55,3 +55,11 @@ def boolify(value):
return False return False
else: else:
return bool(value) return bool(value)
def integer(number):
""" Cast Option value to the integer using int() """
try:
return int(number)
except ValueError:
raise OptionValidationError("Invalid option. can't cast '{}' to integer.".format(number))
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment