def test_count_zero_will_not_override_default_value(self): count_option = ConfigOption( ConfigOptionId('count', '', option_type=Count(0, 1)), required=False) self.config.set(count_option.option_id, 1) with patch('sys.argv', ['zaf', 'command']): extension_config = self.plugin.get_config(self.config, [count_option], {COMMAND: []}) self.assertNotIn('count', extension_config.config)
def test_count_1_not_included_in_config_if_same_as_default(self): count_option = ConfigOption( ConfigOptionId('count', '', option_type=Count(0, 1)), required=False) self.config.set(count_option.option_id, 1) with patch('sys.argv', ['zaf', '--count', 'command']): extension_config = self.plugin.get_config(self.config, [count_option], {COMMAND: []}) self.assertNotIn('count', extension_config.config)
def test_count_clamped_to_max_value(self): count_option = ConfigOption( ConfigOptionId('count', '', option_type=Count(0, 1)), required=False) self.config.set(count_option.option_id, 0) with patch('sys.argv', ['zaf', '--count', '--count', 'command']): extension_config = self.plugin.get_config(self.config, [count_option], {COMMAND: []}) self.assertIn('count', extension_config.config) self.assertEqual(extension_config.config['count'], 1)
def test_count_can_be_given_multiple_times(self): count_option = ConfigOption( ConfigOptionId('count', '', option_type=Count(0, 2)), required=False) self.config.set(count_option.option_id, 0) with patch('sys.argv', ['zaf', '--count', '--count', 'command']): extension_config = self.plugin.get_config(self.config, [count_option], {COMMAND: []}) self.assertIn('count', extension_config.config) self.assertEqual(extension_config.config['count'], 2)
from zaf.config.options import ConfigOptionId from zaf.config.types import Count VERBOSE = ConfigOptionId( 'verbose', 'Increase output verbosity. Can be provided multiple times e.g. -vvv.', option_type=Count(0, 1), short_name='v', default=0, )