Skip to content

Commit aa6899e

Browse files
committed
Fix existing tests.
1 parent 3ec839e commit aa6899e

File tree

3 files changed

+16
-15
lines changed

3 files changed

+16
-15
lines changed

dep_checker/__main__.py

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,10 @@
3636
from consolekit import click_command
3737
from consolekit.options import auto_default_option, colour_option, flag_option
3838
from consolekit.utils import abort
39-
40-
# this package
4139
from domdf_python_tools.paths import PathPlus
4240
from shippinglabel.requirements import parse_pyproject_dependencies, read_requirements
4341

42+
# this package
4443
from dep_checker import check_imports
4544

4645
__all__ = ("main", )
@@ -67,11 +66,7 @@
6766
metavar="FILENAME",
6867
help="Parse the requirements from the given requirements file.",
6968
)
70-
@flag_option(
71-
"-P", "--pyproject",
72-
type=click.STRING,
73-
help="Parse the requirements from 'pyproject.toml'.",
74-
)
69+
@flag_option("-P", "--pyproject", help="Parse the requirements from 'pyproject.toml'.", default=False,)
7570
@click.argument(
7671
"pkg-name",
7772
type=click.STRING,
@@ -92,22 +87,22 @@ def main(
9287
if allowed_unused == ():
9388
allowed_unused = None
9489

95-
work_dir = PathPlus(work_dir)
90+
work_dir_p = PathPlus(work_dir)
9691

9792
def read_req_file(req_file):
9893
req_file = PathPlus(req_file)
9994

10095
if not req_file.is_absolute():
101-
req_file = work_dir / req_file
96+
req_file = work_dir_p / req_file
10297

10398
return read_requirements(req_file)[0]
10499

105100
if pyproject:
106-
pyproject_file = work_dir / "pyproject.toml"
101+
pyproject_file = work_dir_p / "pyproject.toml"
107102
dynamic = dom_toml.load(pyproject_file)["project"].get("dynamic", ())
108103

109104
if "requirements" in dynamic:
110-
requirements = read_req_file(work_dir / "requirements.txt")
105+
requirements = read_req_file(work_dir_p / "requirements.txt")
111106
else:
112107
requirements = parse_pyproject_dependencies(pyproject_file, flavour="pep621")
113108

@@ -120,7 +115,7 @@ def read_req_file(req_file):
120115
*requirements,
121116
allowed_unused=allowed_unused,
122117
colour=colour,
123-
work_dir=work_dir,
118+
work_dir=work_dir_p,
124119
)
125120
sys.exit(ret)
126121
except FileNotFoundError as e:

requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ configconfig>=0.4.0
44
consolekit>=0.4.0
55
dom-toml>=0.2.0
66
domdf-python-tools>=3.2.0
7+
packaging>=25.0
78
shippinglabel>=0.1.0

tests/test_dep_checker.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# stdlib
2-
from typing import Any, Dict
2+
from typing import Any, Dict, List
33

44
# 3rd party
5+
from packaging.requirements import Requirement
56
import pytest
67
from coincidence import AdvancedDataRegressionFixture
78
from consolekit.testing import CliRunner, Result
@@ -22,19 +23,21 @@
2223
def test_check_imports(
2324
single_file_project: PathPlus,
2425
capsys,
26+
requirements: List[str],
2527
advanced_data_regression: AdvancedDataRegressionFixture,
2628
):
27-
assert check_imports("my_project", work_dir=single_file_project, colour=False) == 1
29+
assert check_imports("my_project", *map(Requirement, requirements), work_dir=single_file_project, colour=False) == 1
2830
advanced_data_regression.check(capsys.readouterr())
2931

3032

3133
def test_check_imports_package(
3234
package_project: PathPlus,
3335
capsys,
36+
requirements: List[str],
3437
advanced_data_regression: AdvancedDataRegressionFixture,
3538
):
3639

37-
assert check_imports("my_project", work_dir=package_project, colour=False) == 1
40+
assert check_imports("my_project", *map(Requirement, requirements), work_dir=package_project, colour=False) == 1
3841
advanced_data_regression.check(capsys.readouterr())
3942

4043

@@ -96,9 +99,11 @@ def test_with_config(
9699
capsys,
97100
advanced_data_regression: AdvancedDataRegressionFixture,
98101
config: Dict[str, Any],
102+
requirements: List[str],
99103
):
100104
assert check_imports(
101105
"my_project",
106+
*map(Requirement, requirements),
102107
work_dir=single_file_project,
103108
colour=False,
104109
**config,

0 commit comments

Comments
 (0)