Skip to content

Commit 6442564

Browse files
committed
Add legacy namespace package test
1 parent 6046e9e commit 6442564

File tree

16 files changed

+70
-0
lines changed

16 files changed

+70
-0
lines changed

MODULE.bazel

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,8 @@ use_repo(
213213
"buildkite_config",
214214
"implicit_namespace_ns_sub1",
215215
"implicit_namespace_ns_sub2",
216+
"implicit_namespace_legacy",
217+
"implicit_namespace_legacy_sub",
216218
"rules_python_runtime_env_tc_info",
217219
"somepkg_with_build_files",
218220
"whl_with_build_files",

python/private/internal_dev_deps.bzl

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,30 @@ def _internal_dev_deps_impl(mctx):
6767
enable_implicit_namespace_pkgs = False,
6868
)
6969

70+
whl_from_dir_repo(
71+
name = "implicit_namespace_legacy_whl",
72+
root = "//tests/implicit_namespace_packages:testdata/ns-legacy/BUILD.bazel",
73+
output = "ns_legacy-1.0-any-none-any.whl",
74+
)
75+
whl_library(
76+
name = "implicit_namespace_legacy",
77+
whl_file = "@implicit_namespace_legacy_whl//:ns_legacy-1.0-any-none-any.whl",
78+
requirement = "ns-legacy",
79+
enable_implicit_namespace_pkgs = False,
80+
)
81+
82+
whl_from_dir_repo(
83+
name = "implicit_namespace_legacy_sub_whl",
84+
root = "//tests/implicit_namespace_packages:testdata/ns-legacy-sub/BUILD.bazel",
85+
output = "ns_legacy_sub-1.0-any-none-any.whl",
86+
)
87+
whl_library(
88+
name = "implicit_namespace_legacy_sub",
89+
whl_file = "@implicit_namespace_legacy_sub_whl//:ns_legacy_sub-1.0-any-none-any.whl",
90+
requirement = "ns-legacy-sub",
91+
enable_implicit_namespace_pkgs = False,
92+
)
93+
7094
internal_dev_deps = module_extension(
7195
implementation = _internal_dev_deps_impl,
7296
doc = "This extension creates internal rules_python dev dependencies.",

tests/implicit_namespace_packages/BUILD.bazel

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,7 @@ py_test(
88
deps = [
99
"@implicit_namespace_ns_sub1//:pkg",
1010
"@implicit_namespace_ns_sub2//:pkg",
11+
"@implicit_namespace_legacy//:pkg",
12+
"@implicit_namespace_legacy_sub//:pkg",
1113
],
1214
)

tests/implicit_namespace_packages/namespace_packages_test.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,24 @@ def test_both_importable(self):
2020
)
2121

2222

23+
def test_legacy_packages_importable(self):
24+
import legacy_main
25+
import legacy_main.subpkg1
26+
import legacy_main.subpkg1.subpkgmod
27+
28+
import legacy_side
29+
import legacy_side.subpkg1
30+
import legacy_side.subpkg1.subpkgmod
31+
32+
self.assertEqual("legacy_main.subpkg1", legacy_main.subpkg1.expected_name)
33+
self.assertEqual(
34+
"legacy_main.subpkg1.subpkgmod", legacy_main.subpkg1.subpkgmod.expected_name
35+
)
36+
self.assertEqual("legacy_side.subpkg1", legacy_side.subpkg1.expected_name)
37+
self.assertEqual(
38+
"legacy_side.subpkg1.subpkgmod", legacy_side.subpkg1.subpkgmod.expected_name
39+
)
40+
41+
2342
if __name__ == "__main__":
2443
unittest.main()

tests/implicit_namespace_packages/testdata/ns-legacy-sub/ns_legacy_sub-1.0.dist-info/METADATA

Whitespace-only changes.

tests/implicit_namespace_packages/testdata/ns-legacy-sub/ns_legacy_sub-1.0.dist-info/RECORD

Whitespace-only changes.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Wheel-Version: 1.0
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# TODO(hartikainen): Check this.
2+
3+
4+
5+
6+
7+
8+
9+
10+
# # NOTE: This is the `pkgutil`-style, way to extend namespace packages.
11+
# # For more information, see:
12+
# # https://packaging.python.org/guides/packaging-namespace-packages/#pkgutil-style-namespace-packages
13+
# __path__ = __import__('pkgutil').extend_path(__path__, __name__)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
expected_name = "legacy_sub.subpkg1"
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
expected_name = "legacy_sub.subpkg1.subpkgmod"

0 commit comments

Comments
 (0)