Skip to content

Commit 5177a9b

Browse files
committed
test: use parametrize
1 parent d51ff6b commit 5177a9b

File tree

1 file changed

+21
-15
lines changed

1 file changed

+21
-15
lines changed

src/python/pants/backend/javascript/nodejs_project_test.py

+21-15
Original file line numberDiff line numberDiff line change
@@ -71,28 +71,34 @@ def test_parses_projects(rule_runner: RuleRunner) -> None:
7171
assert {project.root_dir for project in projects} == {"src/js/foo", "src/js/bar"}
7272

7373

74-
def test_immutable_install_args_property(rule_runner: RuleRunner) -> None:
74+
@pytest.mark.parametrize(
75+
("package_manager", "expected_immutable_install_args"),
76+
[
77+
(None, ("clean-install",)),
78+
("[email protected]", ("clean-install",)),
79+
("[email protected]", ("install", "--frozen-lockfile")),
80+
("[email protected]", ("install", "--frozen-lockfile")),
81+
("[email protected]", ("install", "--immutable")),
82+
("[email protected]", ("install", "--immutable")),
83+
],
84+
)
85+
def test_immutable_install_args_property(
86+
package_manager: None | str,
87+
expected_immutable_install_args: tuple[str],
88+
rule_runner: RuleRunner,
89+
) -> None:
7590
rule_runner.write_files(
7691
{
7792
"src/js/foo/BUILD": "package_json()",
78-
"src/js/foo/package.json": given_package("foo", "0.0.1"),
79-
"src/js/bar/BUILD": "package_json()",
80-
"src/js/bar/package.json": given_package(
81-
"bar", "0.0.2", package_manager="[email protected]"
93+
"src/js/foo/package.json": given_package(
94+
name="foo",
95+
version="0.0.1",
96+
package_manager=package_manager,
8297
),
83-
"src/js/baz/BUILD": "package_json()",
84-
"src/js/baz/package.json": given_package("baz", "0.0.3", package_manager="[email protected]"),
85-
"src/js/qux/BUILD": "package_json()",
86-
"src/js/qux/package.json": given_package("qux", "0.0.4", package_manager="[email protected]"),
8798
}
8899
)
89100
projects = rule_runner.request(AllNodeJSProjects, [])
90-
assert {project.immutable_install_args for project in projects} == {
91-
("clean-install",),
92-
("install", "--frozen-lockfile"),
93-
("install", "--immutable"),
94-
("install", "--frozen-lockfile"),
95-
}
101+
assert projects[0].immutable_install_args == expected_immutable_install_args
96102

97103

98104
def test_immutable_install_args_property_with_unsupported_package_manager(

0 commit comments

Comments
 (0)