Skip to content

Commit 6a3e2f9

Browse files
authored
Fix failing test in rolling bazel version (bazelbuild#4076)
My assumption is that the hashing algorithm changed in some way in the rolling Bazel version. I don't think we need to test the exact value, just that it's a numeric hash.
1 parent 2a9037e commit 6a3e2f9

2 files changed

Lines changed: 15 additions & 3 deletions

File tree

test/unit/common.bzl

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,18 @@ def assert_argv_contains_prefix_not(env, action, prefix):
5252
),
5353
)
5454

55+
def assert_argv_contains_prefix_then_digit(env, action, prefix):
56+
for found_flag in action.argv:
57+
if found_flag.startswith(prefix) and len(found_flag) > len(prefix) and found_flag[len(prefix)].isdigit():
58+
return
59+
unittest.fail(
60+
env,
61+
"Expected an arg with prefix '{prefix}' followed by a digit in {args}".format(
62+
prefix = prefix,
63+
args = action.argv,
64+
),
65+
)
66+
5567
def assert_action_mnemonic(env, action, mnemonic):
5668
if not action.mnemonic == mnemonic:
5769
unittest.fail(

test/unit/crate_name/crate_name_test.bzl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
load("@bazel_skylib//lib:unittest.bzl", "analysistest")
44
load("//rust:defs.bzl", "rust_binary", "rust_library", "rust_shared_library", "rust_static_library", "rust_test", "rust_test_suite")
5-
load("//test/unit:common.bzl", "assert_argv_contains", "assert_argv_contains_prefix_not")
5+
load("//test/unit:common.bzl", "assert_argv_contains", "assert_argv_contains_prefix_not", "assert_argv_contains_prefix_then_digit")
66

77
def _default_crate_name_library_test_impl(ctx):
88
env = analysistest.begin(ctx)
@@ -58,8 +58,8 @@ def _slib_library_name_test_impl(ctx):
5858
"""
5959
env = analysistest.begin(ctx)
6060
tut = analysistest.target_under_test(env)
61-
assert_argv_contains(env, tut.actions[0], "--codegen=metadata=-2102077805")
62-
assert_argv_contains(env, tut.actions[0], "--codegen=extra-filename=-2102077805")
61+
assert_argv_contains_prefix_then_digit(env, tut.actions[0], "--codegen=metadata=-")
62+
assert_argv_contains_prefix_then_digit(env, tut.actions[0], "--codegen=extra-filename=-")
6363
return analysistest.end(env)
6464

6565
def _no_extra_filename_test_impl(ctx):

0 commit comments

Comments
 (0)