[OE-core] [PATCH 2/2] oe-selftest: improve bitbake-layers tests

Paul Eggleton paul.eggleton at linux.intel.com
Mon Mar 16 10:45:29 UTC 2015


* Add a test for add-layer and remove-layer
* Correct message for test_bitbakelayers_showoverlayed()
* Improve test_bitbakelayers_flatten() to use a more unique name for the
  temp output directory and clean it up using track_for_cleanup()

Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
---
 meta/lib/oeqa/selftest/bblayers.py | 27 ++++++++++++++++++++++-----
 1 file changed, 22 insertions(+), 5 deletions(-)

diff --git a/meta/lib/oeqa/selftest/bblayers.py b/meta/lib/oeqa/selftest/bblayers.py
index 449c17e..5b046d0 100644
--- a/meta/lib/oeqa/selftest/bblayers.py
+++ b/meta/lib/oeqa/selftest/bblayers.py
@@ -29,15 +29,32 @@ class BitbakeLayers(oeSelfTest):
     @testcase(90)
     def test_bitbakelayers_showoverlayed(self):
         result = runCmd('bitbake-layers show-overlayed')
-        self.assertTrue('aspell' in result.output, msg='xcursor-transparent-theme_0.1.1.bbappend file was not recognised')
+        self.assertTrue('aspell' in result.output, msg='aspell overlayed recipe was not recognised')
 
     @testcase(95)
     def test_bitbakelayers_flatten(self):
-        self.assertFalse(os.path.isdir(os.path.join(self.builddir, 'test')))
-        result = runCmd('bitbake-layers flatten test')
-        bb_file = os.path.join(self.builddir, 'test/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme_0.1.1.bb')
+        testoutdir = os.path.join(self.builddir, 'test_bitbakelayers_flatten')
+        self.assertFalse(os.path.isdir(testoutdir))
+        self.track_for_cleanup(testoutdir)
+        result = runCmd('bitbake-layers flatten %s' % testoutdir)
+        bb_file = os.path.join(testoutdir, 'recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme_0.1.1.bb')
         self.assertTrue(os.path.isfile(bb_file))
         contents = ftools.read_file(bb_file)
         find_in_contents = re.search("##### bbappended from meta-selftest #####\n(.*\n)*include test_recipe.inc", contents)
-        shutil.rmtree(os.path.join(self.builddir, 'test'))
         self.assertTrue(find_in_contents)
+
+    def test_bitbakelayers_add_remove(self):
+        result = runCmd('bitbake-layers show-layers')
+        self.assertNotIn('meta-skeleton', result.output, 'This test cannot run with meta-skeleton in bblayers.conf')
+        result = runCmd('bitbake-layers add-layer ../meta-skeleton')
+        result = runCmd('bitbake-layers show-layers')
+        self.assertIn('meta-skeleton', result.output)
+        result = runCmd('bitbake-layers remove-layer ../meta-skeleton')
+        result = runCmd('bitbake-layers show-layers')
+        self.assertNotIn('meta-skeleton', result.output)
+        result = runCmd('bitbake-layers add-layer ../meta-skeleton')
+        result = runCmd('bitbake-layers show-layers')
+        self.assertIn('meta-skeleton', result.output)
+        result = runCmd('bitbake-layers remove-layer */meta-skeleton')
+        result = runCmd('bitbake-layers show-layers')
+        self.assertNotIn('meta-skeleton', result.output)
-- 
1.9.3




More information about the Openembedded-core mailing list