summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/tests/utils.py
diff options
context:
space:
mode:
authorRoss Burton <ross@burtonini.com>2021-08-10 17:55:06 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-08-12 06:28:01 +0100
commit62098f90411ca6775d3d7d70a8a641ce35dc9f84 (patch)
treea919513115e8c9c5d26abef520769ee303c6c164 /bitbake/lib/bb/tests/utils.py
parent0975ff9b69b9ee86d6554f96b391a0186761a3cc (diff)
downloadpoky-62098f90411ca6775d3d7d70a8a641ce35dc9f84.tar.gz
bitbake: utils: add environment updating context manager
bb.utils.environment() is a context manager to alter os.environ inside a specific block, restoring it after the block is closed. (Bitbake rev: 9974848f67581ff7d76cef52a94f505af99b4932) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/tests/utils.py')
-rw-r--r--bitbake/lib/bb/tests/utils.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/bitbake/lib/bb/tests/utils.py b/bitbake/lib/bb/tests/utils.py
index a7ff33db52..4d5e21b99e 100644
--- a/bitbake/lib/bb/tests/utils.py
+++ b/bitbake/lib/bb/tests/utils.py
@@ -666,3 +666,21 @@ class GetReferencedVars(unittest.TestCase):
666 666
667 layers = [{"SRC_URI"}, {"QT_GIT", "QT_MODULE", "QT_MODULE_BRANCH_PARAM", "QT_GIT_PROTOCOL"}, {"QT_GIT_PROJECT", "QT_MODULE_BRANCH", "BPN"}, {"PN", "SPECIAL_PKGSUFFIX"}] 667 layers = [{"SRC_URI"}, {"QT_GIT", "QT_MODULE", "QT_MODULE_BRANCH_PARAM", "QT_GIT_PROTOCOL"}, {"QT_GIT_PROJECT", "QT_MODULE_BRANCH", "BPN"}, {"PN", "SPECIAL_PKGSUFFIX"}]
668 self.check_referenced("${SRC_URI}", layers) 668 self.check_referenced("${SRC_URI}", layers)
669
670
671class EnvironmentTests(unittest.TestCase):
672 def test_environment(self):
673 os.environ["A"] = "this is A"
674 self.assertIn("A", os.environ)
675 self.assertEqual(os.environ["A"], "this is A")
676 self.assertNotIn("B", os.environ)
677
678 with bb.utils.environment(B="this is B"):
679 self.assertIn("A", os.environ)
680 self.assertEqual(os.environ["A"], "this is A")
681 self.assertIn("B", os.environ)
682 self.assertEqual(os.environ["B"], "this is B")
683
684 self.assertIn("A", os.environ)
685 self.assertEqual(os.environ["A"], "this is A")
686 self.assertNotIn("B", os.environ)