Add tests for app/print_table.py #15

Merged
luketainton merged 3 commits from unittest into main 2022-07-10 19:29:56 +02:00
4 changed files with 22 additions and 2 deletions

View File

@ -7,7 +7,7 @@ import sys
from app.args import parse_args
from app.print_table import print_table, generate_prefix_string
from app.query_normalisation import is_ip_address, resolve_domain_name
from app.ip_info import ( # pragma: no cover
from app.ip_info import (
get_ip_information,
get_autonomous_system_number,
get_prefix_information,

View File

@ -18,6 +18,6 @@ def generate_prefix_string(prefixes: list) -> Union[str, None]:
return None
def print_table(table_data) -> None:
def print_table(table_data) -> None: # pragma: no cover
"""Print table generated by tabulate."""
print(tabulate(table_data))

View File

@ -6,3 +6,4 @@ sonar.python.xunit.reportPath=testresults.xml
sonar.sources=app
sonar.tests=tests
sonar.exclusions=,.github/**,.gitignore,CODEOWNERS,CHANGELOG.md,LICENSE.md,README.md,renovate.json,requirements-dev.txt,requirements.txt
sonar.coverage.exclusions=app/_version.py,app/args.py,app/main.py

19
tests/test_print_table.py Normal file
View File

@ -0,0 +1,19 @@
#!/usr/bin/env python3
"""MODULE: Provides test cases for app/print_table.py."""
from app.print_table import generate_prefix_string # pragma: no cover
def test_generate_prefix_string_small() -> None:
"""TEST: Verifies if a small prefix list results in one line."""
test_query = ["abc", "def"]
result = generate_prefix_string(prefixes=test_query)
assert result == "abc, def\n"
def test_generate_prefix_string_large() -> None:
"""TEST: Verifies if a large prefix list results in multiple lines."""
test_query = ["abc", "def", "ghi", "jkl", "mno", "pqr"]
result = generate_prefix_string(prefixes=test_query)
assert result == "abc, def, ghi, jkl\nmno, pqr\n"