class ParseResult_(Spec): "ParseResult" def setup(self): self.context = Context('mytask', args=(Argument('foo', kind=str), Argument('bar'))) argv = ['mytask', '--foo', 'foo-val', '--', 'my', 'remainder'] self.result = Parser((self.context,)).parse_argv(argv) def acts_as_a_list_of_parsed_contexts(self): eq_(len(self.result), 1) eq_(self.result[0].name, 'mytask') def exhibits_remainder_attribute(self): eq_(self.result.remainder, 'my remainder') def to_dict_returns_parsed_contexts_and_args_as_nested_dicts(self): eq_( self.result.to_dict(), {'mytask': {'foo': 'foo-val', 'bar': None}} )