如何为bazel测试提供时区标志?
正如bazel测试百科全书所说,如何为bazel测试提供时区标志?,bazel,Bazel,正如bazel测试百科全书所说,UTC是bazel时区。我想知道有没有办法让bazel使用system zone,即Local 您可以使用--action\u env传递环境值,例如 bazel test --test_output=all --action_env=TZ=Local :tz_test INFO: From Testing //:tz_test: ==================== Test output for //:tz_test: timezone: Local ==
UTC
是bazel时区。我想知道有没有办法让bazel使用system zone,即Local
您可以使用--action\u env
传递环境值,例如
bazel test --test_output=all --action_env=TZ=Local :tz_test
INFO: From Testing //:tz_test:
==================== Test output for //:tz_test:
timezone: Local
================================================================================
Target //:tz_test up-to-date:
bazel-bin/tz_test
INFO: Elapsed time: 1.034s, Critical Path: 0.05s
//:tz_test PASSED in 0.0s
请注意,这不会“取消缓存”测试结果,因此您必须首先运行
bazel clean
,让bazel获取环境变量更改。我对此进行了归档。如果测试是java\u测试
,您可以使用user.timezone
JVM标志作为java\u测试
规则的属性。例如:
java_test(
name = "Test",
test_class = "TZTest",
srcs = [
"TZTest.java",
],
jvm_flags = [
"-Duser.timezone=EST",
],
)
您可以确认这在时区.getDefault().getDisplayName()
中有效