Skip to content

Commit 3558f28

Browse files
committed
initial test
1 parent 9ba93c1 commit 3558f28

File tree

2 files changed

+64
-2
lines changed

2 files changed

+64
-2
lines changed

python/private/render_pkg_aliases.bzl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,7 @@ def render_multiplatform_pkg_aliases(*, input_aliases, default_version, **kwargs
296296
)
297297

298298
aliases = {
299-
pkg: multiplatform_aliases(
299+
pkg: multiplatform_whl_aliases(
300300
aliases = pkg_aliases,
301301
default_version = default_version,
302302
glibc_versions = flag_versions.get("glibc_versions", []),
@@ -315,7 +315,7 @@ def render_multiplatform_pkg_aliases(*, input_aliases, default_version, **kwargs
315315
),
316316
}
317317

318-
def multiplatform_aliases(*, aliases, default_version, **kwargs):
318+
def multiplatform_whl_aliases(*, aliases, default_version, **kwargs):
319319
"""convert a list of aliases from filename to config_setting ones.
320320
321321
Args:

tests/pip_hub_repository/render_pkg_aliases/render_pkg_aliases_test.bzl

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ load(
2020
"//python/private:render_pkg_aliases.bzl",
2121
"get_filename_config_settings",
2222
"get_whl_flag_versions",
23+
"multiplatform_whl_aliases",
2324
"render_pkg_aliases",
2425
"whl_alias",
2526
) # buildifier: disable=bzl-visibility
@@ -721,6 +722,67 @@ def _test_cp37_abi3_manylinux_2_17_musllinux_1_1_aarch64(env):
721722

722723
_tests.append(_test_cp37_abi3_manylinux_2_17_musllinux_1_1_aarch64)
723724

725+
def _test_multiplatform_whl_aliases_empty(env):
726+
got = multiplatform_whl_aliases(aliases = [], default_version = None)
727+
env.expect.that_collection(got).contains_exactly([])
728+
729+
_tests.append(_test_multiplatform_whl_aliases_empty)
730+
731+
def _test_multiplatform_whl_aliases_nofilename(env):
732+
aliases = [
733+
whl_alias(
734+
repo = "foo",
735+
config_setting = "//:label",
736+
version = "3.1",
737+
),
738+
]
739+
got = multiplatform_whl_aliases(aliases = aliases, default_version = None)
740+
env.expect.that_collection(got).contains_exactly(aliases)
741+
742+
_tests.append(_test_multiplatform_whl_aliases_nofilename)
743+
744+
def _test_multiplatform_whl_aliases_filename(env):
745+
aliases = [
746+
whl_alias(
747+
repo = "foo-py3-0.0.3",
748+
filename = "foo-0.0.3-py3-none-any.whl",
749+
version = "3.2",
750+
),
751+
whl_alias(
752+
repo = "foo-py3-0.0.1",
753+
filename = "foo-0.0.1-py3-none-any.whl",
754+
version = "3.1",
755+
),
756+
whl_alias(
757+
repo = "foo-0.0.2",
758+
filename = "foo-0.0.2-py3-none-any.whl",
759+
version = "3.1",
760+
target_platforms = [
761+
"linux_x86_64",
762+
"linux_aarch64",
763+
],
764+
),
765+
]
766+
got = multiplatform_whl_aliases(
767+
aliases = aliases,
768+
default_version = "3.1",
769+
glibc_versions = [],
770+
muslc_versions = [],
771+
osx_versions = [],
772+
)
773+
want = [
774+
whl_alias(config_setting = "//_config:is_cp3.1_py3_none_any", repo = "foo-py3-0.0.1", version = "3.1"),
775+
whl_alias(config_setting = "//_config:is_cp3.1_py3_none_any_linux_aarch64", repo = "foo-0.0.2", version = "3.1"),
776+
whl_alias(config_setting = "//_config:is_cp3.1_py3_none_any_linux_x86_64", repo = "foo-0.0.2", version = "3.1"),
777+
whl_alias(config_setting = "//_config:is_cp3.2_py3_none_any", repo = "foo-py3-0.0.3", version = "3.2"),
778+
whl_alias(config_setting = "//_config:is_py3_none_any", repo = "foo-py3-0.0.1", version = "3.1"),
779+
whl_alias(config_setting = "//_config:is_py3_none_any_linux_aarch64", repo = "foo-0.0.2", version = "3.1"),
780+
whl_alias(config_setting = "//_config:is_py3_none_any_linux_x86_64", repo = "foo-0.0.2", version = "3.1"),
781+
]
782+
env.expect.that_collection(got).contains_exactly(want)
783+
784+
_tests.append(_test_multiplatform_whl_aliases_filename)
785+
724786
def render_pkg_aliases_test_suite(name):
725787
"""Create the test suite.
726788

0 commit comments

Comments
 (0)