From: Julien Stephan Date: Mon, 11 Dec 2023 17:01:38 +0000 (+0100) Subject: oeqa/selftest/recipetool: fix metadata corruption on meta layer X-Git-Tag: yocto-5.2~4315 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bf5e6c1b6ceca5a2eda30359d5e5e330278a97e1;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git oeqa/selftest/recipetool: fix metadata corruption on meta layer [YOCTO #15314] test_recipetool_appendsrcfile_update_recipe_basic is using base-files as test recipe but modifies it directly which can corrupt metadata for other tests relying on this recipe. So use mtd-utils-selftest as test recipe from meta-selftest to avoid this kind of issues Signed-off-by: Julien Stephan Signed-off-by: Alexandre Belloni --- diff --git a/meta/lib/oeqa/selftest/cases/recipetool.py b/meta/lib/oeqa/selftest/cases/recipetool.py index e0e3dff484b..a19439d88e3 100644 --- a/meta/lib/oeqa/selftest/cases/recipetool.py +++ b/meta/lib/oeqa/selftest/cases/recipetool.py @@ -1267,23 +1267,16 @@ class RecipetoolAppendsrcTests(RecipetoolAppendsrcBase): self.test_recipetool_appendsrcfile_existing_in_src_uri_diff_params(machine='mymachine') def test_recipetool_appendsrcfile_update_recipe_basic(self): - testrecipe = "base-files" + testrecipe = "mtd-utils-selftest" recipefile = get_bb_var('FILE', testrecipe) - result = runCmd('bitbake-layers show-layers') - layerrecipe = None - for line in result.output.splitlines()[3:]: - layer = line.split()[1] - if layer in recipefile: - layerrecipe = layer - break - self.assertTrue(layerrecipe, 'Unable to find the layer containing %s' % testrecipe) - cmd = 'recipetool appendsrcfile -u %s %s %s' % (layerrecipe, testrecipe, self.testfile) + self.assertIn('meta-selftest', recipefile, 'This test expect %s recipe to be in meta-selftest') + cmd = 'recipetool appendsrcfile -W -u meta-selftest %s %s' % (testrecipe, self.testfile) result = runCmd(cmd) self.assertNotIn('Traceback', result.output) self.add_command_to_tearDown('cd %s; rm -f %s/%s; git checkout .' % (os.path.dirname(recipefile), testrecipe, os.path.basename(self.testfile))) expected_status = [(' M', '.*/%s$' % os.path.basename(recipefile)), - ('??', '.*/%s/%s/%s$' % (testrecipe, testrecipe, os.path.basename(self.testfile)))] + ('??', '.*/%s/%s$' % (testrecipe, os.path.basename(self.testfile)))] self._check_repo_status(os.path.dirname(recipefile), expected_status) result = runCmd('git diff %s' % os.path.basename(recipefile), cwd=os.path.dirname(recipefile)) removelines = []