[bitbake-devel] [PATCH 2/2] tests/utils.py: test origvalue in a callback matches what is expected

Randy Witt randy.e.witt at linux.intel.com
Thu Apr 7 06:55:40 UTC 2016


There were any tests that checked to make verify the value of origvalue in
the callback routines used by edit_metadata(). This patch adds one for a
simple multiline variable.

Signed-off-by: Randy Witt <randy.e.witt at linux.intel.com>
---
 lib/bb/tests/utils.py | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/lib/bb/tests/utils.py b/lib/bb/tests/utils.py
index 6ded4df..2f4ccf3 100644
--- a/lib/bb/tests/utils.py
+++ b/lib/bb/tests/utils.py
@@ -23,6 +23,7 @@ import unittest
 import bb
 import os
 import tempfile
+import re
 
 class VerCmpString(unittest.TestCase):
 
@@ -377,6 +378,27 @@ do_functionname() {
         self.assertTrue(updated, 'List should be updated but isn\'t')
         self.assertEqual(newlines, newfile5.splitlines(True))
 
+    # Make sure the orig value matches what we expect it to be
+    def test_edit_metadata_origvalue(self):
+        origfile = """
+MULTILINE = "  stuff \\
+    morestuff"
+"""
+        expected_value = "stuff morestuff"
+        global value_in_callback
+        value_in_callback = ""
+
+        def handle_var(varname, origvalue, op, newlines):
+            global value_in_callback
+            value_in_callback = origvalue
+            return (origvalue, op, -1, False)
+
+        bb.utils.edit_metadata(origfile.splitlines(True),
+                               ['MULTILINE'],
+                               handle_var)
+
+        testvalue = re.sub('\s+', ' ', value_in_callback.strip())
+        self.assertEqual(expected_value, testvalue)
 
 class EditBbLayersConf(unittest.TestCase):
 
-- 
2.5.5




More information about the bitbake-devel mailing list