Commits

Anonymous committed 0eb6b5d Draft

Added failing test for "only show the non-default values" functionality.

Comments (0)

Files changed (1)

argparse_config.src/argparse_config/tests/__init__.py

         arg_parser.add_argument('--flag', action='store_false')
         check_round_trip(arg_parser)
 
+    @with_config_file()
+    def test_only_new(self, config_parser):
+        """
+        [default]
+        flag
+        int_value: 3
+        """
+        arg_parser = ArgumentParser()
+        arg_parser.add_argument('--flag', action='store_true')
+        arg_parser.add_argument('--int-value', default=1)
+        arg_parser.add_argument('--str-value')
 
+        parsed_args = arg_parser.parse_args(['--str-value', 'ssss'])
+        new_config_file = write_defaults(arg_parser, parsed_args, only_non_defaults=True)
+        self.assertEquals(new_config_file, textwrap.dedent("""
+        [default]
+        str_value: ssss
+        """.lstrip('\n')))