From 9cdf746ef07c8028dc382cb0835f32055d670bbc Mon Sep 17 00:00:00 2001 From: Luke Hackwell Date: Mon, 14 Apr 2025 16:09:48 +0100 Subject: [PATCH] feat(test): support env attribute --- e2e/test/BUILD.bazel | 31 ++++++++++++++++++++++++++++++- labgrid/test/rule.bzl | 6 +++++- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/e2e/test/BUILD.bazel b/e2e/test/BUILD.bazel index f107770..e615b8d 100644 --- a/e2e/test/BUILD.bazel +++ b/e2e/test/BUILD.bazel @@ -34,8 +34,37 @@ py_binary( ) labgrid_test( - name = "forward-env-test", + name = "src-env", size = "small", src = ":inner-with-env", platform = "@rules_labgrid//labgrid/platform:localhost", ) + +py_binary( + name = "inner-without-env", + srcs = ["greeting.py"], + main = "greeting.py", +) + +labgrid_test( + name = "env", + size = "small", + src = ":inner-without-env", + env = {"GREETING": "hello"}, + platform = "@rules_labgrid//labgrid/platform:localhost", +) + +py_binary( + name = "inner-with-override-env", + srcs = ["greeting.py"], + env = {"GREETING": "olá"}, + main = "greeting.py", +) + +labgrid_test( + name = "override-src-env", + size = "small", + src = ":inner-with-override-env", + env = {"GREETING": "hello"}, + platform = "@rules_labgrid//labgrid/platform:localhost", +) diff --git a/labgrid/test/rule.bzl b/labgrid/test/rule.bzl index e0f8994..9a81490 100644 --- a/labgrid/test/rule.bzl +++ b/labgrid/test/rule.bzl @@ -19,6 +19,10 @@ ATTRS = { doc = "Platform to transition to.", providers = [platform_common.PlatformInfo], ), + "env": attr.string_dict( + doc = "Environment variables to set in the test environment.", + default = {}, + ), "_executor": attr.label( doc = "The labgrid environment executor", default = "//labgrid/executor", @@ -53,7 +57,7 @@ def _get(pair): return ["--get", "{}:{}".format(key, value)] def implementation(ctx): - env = _run_env(ctx.attr.src) | { + env = _run_env(ctx.attr.src) | ctx.attr.env | { "XML_OUTPUT_FILE": "results.xml", "BAZEL_TEST": "1", } -- GitLab