Skip to content

Commit b871302

Browse files
isidoreJayBazuzi
andcommitted
- F verify_argument_parser
Co-Authored-By: Jay Bazuzi <jay@bazuzi.com>
1 parent 5211792 commit b871302

3 files changed

Lines changed: 15 additions & 17 deletions

File tree

approvaltests/approvals.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import argparse
12
import xml.dom.minidom
23
from contextlib import contextmanager
34
from pathlib import Path
@@ -408,3 +409,14 @@ def verify_executable_command(
408409
ExecutableCommandReporter(command, options.reporter)
409410
),
410411
)
412+
413+
414+
def verify_argument_parser(parser: argparse.ArgumentParser,
415+
*, # enforce keyword arguments - https://www.python.org/dev/peps/pep-3102/
416+
options: Optional[Options] = None) -> None:
417+
parser.formatter_class = lambda prog: argparse.HelpFormatter(
418+
prog, max_help_position=100, width=200
419+
)
420+
options = options or Options()
421+
scrubber = lambda t: t.replace("options:", "<optional header>:")
422+
verify( parser.format_help(),options=options.with_scrubber(scrubber),)

tests/approved_files/test_find_stale_approved_files.test_create_argument_parser.approved.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ positional arguments:
66
directory Directory to search for approved files
77
log_file Path to the approved files log
88

9-
options:
9+
<optional header>:
1010
-h, --help show this help message and exit

tests/test_find_stale_approved_files.py

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
1-
import argparse
21
import os
32
import sys
43
import tempfile
54
import subprocess
6-
from typing import Optional
75

8-
from approvaltests import Options, verify
6+
from approvaltests import Options, verify_argument_parser
97
from approvaltests.utilities.logger.simple_logger_approvals import verify_simple_logger
108
from approval_utilities.utilities.logger.simple_logger import SimpleLogger
119
from tests.find_stale_approved_files import create_argument_parser
@@ -54,19 +52,7 @@ def execute_script(directory, log_file):
5452

5553

5654
def test_create_argument_parser():
57-
parser = create_argument_parser()
58-
verify_argument_parser(parser)
59-
60-
61-
def verify_argument_parser(parser: argparse.ArgumentParser,
62-
*, # enforce keyword arguments - https://www.python.org/dev/peps/pep-3102/
63-
options: Optional[Options] = None) -> None:
64-
parser.formatter_class = lambda prog: argparse.HelpFormatter(
65-
prog, max_help_position=100, width=200
66-
)
67-
options = options or Options()
68-
scrubber = create_regex_scrubber(r"option.*", "options:")
69-
verify( parser.format_help(),options=options.with_scrubber(scrubber),)
55+
verify_argument_parser(create_argument_parser())
7056

7157

7258
def test_find_stale_approved_files():

0 commit comments

Comments
 (0)