scanner: rework the main() function into something easier to test

Rename to scanner() and take an argument vector that can be passed to
ArgumentParser.parse_args(). This makes testing the scanner's CLI a lot
easier.
This commit is contained in:
Peter Hutterer 2023-05-25 09:46:53 +10:00
parent 091948e9ef
commit 3a9eb2d8b6

View file

@ -832,7 +832,7 @@ def generate_source(
return jtemplate.stream(data)
def main() -> None:
def scanner(argv: list[str]) -> None:
parser = argparse.ArgumentParser(
description=dedent(
"""
@ -894,7 +894,7 @@ def main() -> None:
"template", type=str, help="The Jinja2 compatible template file"
)
ns = parser.parse_args()
ns = parser.parse_args(argv)
assert ns.protocol.exists()
try:
@ -941,4 +941,4 @@ def main() -> None:
if __name__ == "__main__":
main()
scanner(sys.argv[1:])