34 |
34 |
from mock import patch, call
|
35 |
35 |
from unittest import TestCase
|
36 |
36 |
from StringIO import StringIO
|
37 |
|
from itertools import product
|
|
37 |
#from itertools import product
|
38 |
38 |
|
39 |
|
from kamaki.cli import argument
|
|
39 |
from kamaki.cli import argument, errors
|
40 |
40 |
from kamaki.cli.config import Config
|
41 |
41 |
|
42 |
42 |
|
... | ... | |
212 |
212 |
arg.assert_called_once(1, help, pname, default)
|
213 |
213 |
|
214 |
214 |
|
|
215 |
class IntArgument(TestCase):
|
|
216 |
|
|
217 |
def test_value(self):
|
|
218 |
ia = argument.IntArgument(parsed_name='--ia')
|
|
219 |
self.assertEqual(ia.value, None)
|
|
220 |
for v in (1, 0, -1, 923455555555555555555555555555555):
|
|
221 |
ia.value = v
|
|
222 |
self.assertEqual(ia.value, v)
|
|
223 |
for v in ('1', '-1', 2.8):
|
|
224 |
ia.value = v
|
|
225 |
self.assertEqual(ia.value, int(v))
|
|
226 |
for v, err in (
|
|
227 |
('invalid', errors.CLIError),
|
|
228 |
(None, TypeError), (False, TypeError), ([1, 2, 3], TypeError)):
|
|
229 |
try:
|
|
230 |
ia.value = v
|
|
231 |
except Exception as e:
|
|
232 |
self.assertTrue(isinstance(e, err))
|
|
233 |
|
|
234 |
|
215 |
235 |
if __name__ == '__main__':
|
216 |
236 |
from sys import argv
|
217 |
237 |
from kamaki.cli.test import runTestCase
|
... | ... | |
220 |
240 |
runTestCase(RuntimeConfigArgument, 'RuntimeConfigArgument', argv[1:])
|
221 |
241 |
runTestCase(FlagArgument, 'FlagArgument', argv[1:])
|
222 |
242 |
runTestCase(FlagArgument, 'ValueArgument', argv[1:])
|
|
243 |
runTestCase(IntArgument, 'IntArgument', argv[1:])
|