예제 #1
0
    def test_basic_argument(self):
        kwargs = {'container': mock.Mock(), 'prop': 'ArgumentFoo'}
        kwargs['container'].py_name = 'bag'
        kwargs.update(FLATTEN_CONFIG['command-name']['original-argument']
                      ['flatten']['ArgumentFoo'])
        arg = FlattenedArgument(**kwargs)

        self.assertEqual('foo', arg.name)
        self.assertEqual('', arg.documentation)
        self.assertEqual(False, arg.required)

        params = {}
        arg.add_to_params(params, 'value')
        self.assertEqual('value', params['bag']['ArgumentFoo'])
예제 #2
0
    def test_hydrate_function_argument(self):
        kwargs = {'container': mock.Mock(), 'prop': 'ArgumentBaz:SomeValue'}
        kwargs['container'].py_name = 'bag'
        kwargs.update(
            FLATTEN_CONFIG['command-name']['another-original-argument']
            ['flatten']['ArgumentBaz.SomeValue'])
        arg = FlattenedArgument(**kwargs)

        self.assertEqual('baz', arg.name)
        self.assertEqual('', arg.documentation)
        self.assertEqual(False, arg.required)

        params = {}
        arg.add_to_params(params, 1020)
        self.assertEqual(10.2, params['bag']['ArgumentBaz']['SomeValueAbc'])
예제 #3
0
    def test_hydrate_value_argument(self):
        kwargs = {'container': mock.Mock(), 'prop': 'ArgumentBar'}
        kwargs['container'].py_name = 'bag'
        kwargs['container'].cli_type_name = 'list'
        kwargs.update(FLATTEN_CONFIG['command-name']['original-argument']
                      ['flatten']['ArgumentBar'])
        arg = FlattenedArgument(**kwargs)

        self.assertEqual('bar', arg.name)
        self.assertEqual('Some help text', arg.documentation)
        self.assertEqual(True, arg.required)

        params = {}
        arg.add_to_params(params, 'value')
        self.assertEqual('VALUE', params['bag'][0]['ArgumentBar'])