Skip to content

Commit 0a15552

Browse files
Review feedback
1 parent c99fc89 commit 0a15552

File tree

4 files changed

+51
-4
lines changed

4 files changed

+51
-4
lines changed

.pre-commit-hooks.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@
55
language: python
66
files: "dependencies.yaml"
77
pass_filenames: false
8+
args: [-Wunused-dependencies, -Werror]

src/rapids_dependency_file_generator/_rapids_dependency_file_validator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,4 +47,4 @@ def validate_dependencies(dependencies: dict[str, typing.Any]) -> None:
4747
i for file_config in dependencies["files"].values() for i in file_config["includes"]
4848
)
4949
for dep in sorted(unused_dependency_sets):
50-
warnings.warn(f'Dependency set "{dep}" is unused.', UnusedDependencySetWarning)
50+
warnings.warn(f'Dependency set "{dep}" is not referred to anywhere in "files:"', UnusedDependencySetWarning)

tests/test_cli.py

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
1+
import contextlib
2+
import os.path
3+
from textwrap import dedent
4+
15
import pytest
26

3-
from rapids_dependency_file_generator._cli import generate_matrix, validate_args
7+
from rapids_dependency_file_generator._cli import generate_matrix, main, validate_args
8+
from rapids_dependency_file_generator._rapids_dependency_file_validator import UnusedDependencySetWarning
49

510

611
def test_generate_matrix():
@@ -181,3 +186,44 @@ def test_validate_args():
181186

182187
args = validate_args(["--version"])
183188
assert args.version
189+
190+
191+
@pytest.mark.parametrize(
192+
["extra_args", "context"],
193+
[
194+
(
195+
[],
196+
contextlib.nullcontext(),
197+
),
198+
(
199+
["-Werror"],
200+
contextlib.nullcontext(),
201+
),
202+
(
203+
["-Wunused-dependencies"],
204+
pytest.warns(UnusedDependencySetWarning),
205+
),
206+
(
207+
["-Wunused-dependencies", "-Werror"],
208+
pytest.raises(UnusedDependencySetWarning),
209+
),
210+
],
211+
)
212+
def test_warnings(tmp_path, extra_args, context):
213+
config_file = os.path.join(tmp_path, "dependencies.yaml")
214+
with open(config_file, "w") as f:
215+
f.write(dedent("""
216+
files:
217+
all:
218+
output: conda
219+
includes: [a]
220+
channels: []
221+
dependencies:
222+
a:
223+
common: []
224+
b:
225+
common: []
226+
"""))
227+
228+
with context:
229+
main(["--config", config_file, *extra_args])

tests/test_rapids_dependency_file_validator.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,5 +29,5 @@ def test_validate_dependencies_warn_on_unused_deps():
2929
})
3030

3131
assert len(warnings) == 2
32-
assert warnings[0].message.args[0] == 'Dependency set "c" is unused.'
33-
assert warnings[1].message.args[0] == 'Dependency set "d" is unused.'
32+
assert warnings[0].message.args[0] == 'Dependency set "c" is not referred to anywhere in "files:"'
33+
assert warnings[1].message.args[0] == 'Dependency set "d" is not referred to anywhere in "files:"'

0 commit comments

Comments
 (0)