2121from absl .testing import absltest
2222from src .test .py .bazel import test_base
2323from src .test .py .bazel .bzlmod .test_utils import BazelRegistry
24+ from src .test .py .bazel .bzlmod .test_utils import queryTargetAttr
2425
2526
2627class BazelOverridesTest (test_base .TestBase ):
@@ -46,15 +47,15 @@ def setUp(self):
4647 [
4748 # In ipv6 only network, this has to be enabled.
4849 # 'startup --host_jvm_args=-Djava.net.preferIPv6Addresses=true',
49- 'build --registry=' + self .main_registry .getURL (),
50+ 'common --registry=' + self .main_registry .getURL (),
5051 # We need to have BCR here to make sure built-in modules like
5152 # bazel_tools can work.
52- 'build --registry=https://bcr.bazel.build' ,
53- 'build --verbose_failures' ,
53+ 'common --registry=https://bcr.bazel.build' ,
54+ 'common --verbose_failures' ,
5455 # Set an explicit Java language version
55- 'build --java_language_version=8' ,
56- 'build --tool_java_language_version=8' ,
57- 'build --lockfile_mode=update' ,
56+ 'common --java_language_version=8' ,
57+ 'common --tool_java_language_version=8' ,
58+ 'common --lockfile_mode=update' ,
5859 ],
5960 )
6061
@@ -125,6 +126,13 @@ def testSingleVersionOverrideWithPatch(self):
125126 self .assertIn ('main function => bbb@1.1' , stdout )
126127 self .assertIn ('bbb@1.1 => aaa@1.0 (locally patched)' , stdout )
127128
129+ # Verify the default package metadata.
130+ package_metadata = queryTargetAttr (self , '@aaa//:lib_aaa' , 'package_metadata' )['stringListValue' ]
131+ self .assertEqual (len (package_metadata ), 1 )
132+ package_metadata_target = package_metadata [0 ]
133+ purl = queryTargetAttr (self , package_metadata_target , 'purl' )['stringValue' ]
134+ self .assertEqual (purl , 'pkg:bazel/aaa@1.0.patched.2e17a4fe' )
135+
128136 def testSingleVersionOverrideWithPatchCmds (self ):
129137 self .writeMainProjectFiles ()
130138 self .ScratchFile (
@@ -153,6 +161,13 @@ def testSingleVersionOverrideWithPatchCmds(self):
153161 'bbb@1.1 => aaa@1.0 (locally patched with patch_cmds)' , stdout
154162 )
155163
164+ # Verify the default package metadata.
165+ package_metadata = queryTargetAttr (self , '@aaa//:lib_aaa' , 'package_metadata' )['stringListValue' ]
166+ self .assertEqual (len (package_metadata ), 1 )
167+ package_metadata_target = package_metadata [0 ]
168+ purl = queryTargetAttr (self , package_metadata_target , 'purl' )['stringValue' ]
169+ self .assertEqual (purl , 'pkg:bazel/aaa@1.0.patched.1a1372d' )
170+
156171 def testSingleVersionOverrideWithPatchAndPatchCmds (self ):
157172 self .writeMainProjectFiles ()
158173 self .ScratchFile (
@@ -186,6 +201,14 @@ def testSingleVersionOverrideWithPatchAndPatchCmds(self):
186201 stdout ,
187202 )
188203
204+
205+ # Verify the default package metadata.
206+ package_metadata = queryTargetAttr (self , '@aaa//:lib_aaa' , 'package_metadata' )['stringListValue' ]
207+ self .assertEqual (len (package_metadata ), 1 )
208+ package_metadata_target = package_metadata [0 ]
209+ purl = queryTargetAttr (self , package_metadata_target , 'purl' )['stringValue' ]
210+ self .assertEqual (purl , 'pkg:bazel/aaa@1.0.patched.1efd6af1' )
211+
189212 def testSingleVersionOverrideVersionTooLow (self ):
190213 self .writeMainProjectFiles ()
191214 self .ScratchFile (
0 commit comments