Похоже на задание для select () .
Определите config_setting для -c opt
и используйте select
в атрибуте data
тестазависеть от двоичного файла. Также передайте некоторый флаг в тест, чтобы указать, должен ли он проверять размер двоичного файла.
Я приведу вам пример с sh_test
, потому что я не хочу предполагать что-либо о size_test
:
some_test(
name = "example_size_test",
srcs = [...], # you need to implement this
deps = ["@bazel_tools//tools/bash/runfiles"],
data = select({
":config_opt": ["//my:binary"],
"//conditions:default": [],
}),
args = select({
":config_opt": [],
"//conditions:default": ["do_not_run"],
}),
)
Если $1 == "do_not_run"
, то тест должен завершиться 0, в противном случае он должен использовать библиотеку runfiles (см. Bash , C ++ , Java , Python ) для получения местоположения //my:binary
и проверки его размера.