Introduce test-specific environment variables #1014
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds two new functions to the integration tests utilities:
This allows to set and get test-specific environment variables easily, without maintaining the unique naming for multiple environment variables.
Use case:
Say we have an integration test, in which we want to assign a value for a variable WAIT_TIMEOUT externally from the environment, but we don't want to create a new fixture for it, as this value would be used only in this specific test. The expected environment variable name would be assembled from the prefix
TEST_
, test name (i.e. the directory name in which the test script is located) and the provided suffix, e.g. in test namedbluechi-generic-test
, the expected environment variable would beTEST_BLUECHI_GENERIC_TEST_WAIT_TIMEOUT
Thus, using
WAIT_TIMEOUT = get_test_env_value_int("WAIT_TIMEOUT", 1000)
in the test namedbluechi-generic-test
will setWAIT_TIMEOUT
the value of 1000, unlessTEST_BLUECHI_GENERIC_TEST_WAIT_TIMEOUT
environment variable is set with an integer value, which in that case would be passed toWAIT_TIMEOUT