[OE-core] [PATCH 1/1] oeqa: archiver: Add basic tests for all archiver modes
Paul Barker
paul at betafive.co.uk
Mon Nov 25 08:29:13 UTC 2019
Ping on this, it hasn't been accepted yet but also hasn't had any review.
On Mon, 11 Nov 2019, at 14:16, Paul Barker wrote:
> 6 new test cases are added to cover the various archiver modes
> documented at the top of archiver.bbclass. Each test sets the
> appropriate configuration options, runs the `do_deploy_archives` task
> for the selftest-ed recipe and checks for the presence of the expected
> archive file.
>
> Signed-off-by: Paul Barker <paul at betafive.co.uk>
> ---
> meta/lib/oeqa/selftest/cases/archiver.py | 66 ++++++++++++++++++++++++
> 1 file changed, 66 insertions(+)
>
> diff --git a/meta/lib/oeqa/selftest/cases/archiver.py
> b/meta/lib/oeqa/selftest/cases/archiver.py
> index f8672f8abb..6bd0e06ec4 100644
> --- a/meta/lib/oeqa/selftest/cases/archiver.py
> +++ b/meta/lib/oeqa/selftest/cases/archiver.py
> @@ -129,3 +129,69 @@ class Archiver(OESelftestTestCase):
> self.write_config(features)
>
> bitbake('-n core-image-sato')
> +
> + def _test_archiver_mode(self, mode, target_file_name,
> extra_config=None):
> + target = "selftest-ed"
> +
> + features = 'INHERIT += "archiver"\n'
> + features += 'ARCHIVER_MODE[src] = "%s"\n' % (mode)
> + if extra_config:
> + features += extra_config
> + self.write_config(features)
> +
> + bitbake('-c clean %s' % (target))
> + bitbake('-c deploy_archives %s' % (target))
> +
> + bb_vars = get_bb_vars(['DEPLOY_DIR_SRC', 'TARGET_SYS'])
> + glob_str = os.path.join(bb_vars['DEPLOY_DIR_SRC'],
> bb_vars['TARGET_SYS'], '%s-*' % (target))
> + glob_result = glob.glob(glob_str)
> + self.assertTrue(glob_result, 'Missing archiver directory for
> %s' % (target))
> +
> + archive_path = os.path.join(glob_result[0], target_file_name)
> + self.assertTrue(os.path.exists(archive_path), 'Missing archive
> file %s' % (target_file_name))
> +
> + def test_archiver_mode_original(self):
> + """
> + Test that the archiver works in with `ARCHIVER_MODE[src] =
> "original"`.
> + """
> +
> + self._test_archiver_mode('original', 'ed-1.14.1.tar.lz')
> +
> + def test_archiver_mode_patched(self):
> + """
> + Test that the archiver works in with `ARCHIVER_MODE[src] =
> "patched"`.
> + """
> +
> + self._test_archiver_mode('patched',
> 'selftest-ed-1.14.1-r0-patched.tar.gz')
> +
> + def test_archiver_mode_configured(self):
> + """
> + Test that the archiver works in with `ARCHIVER_MODE[src] =
> "configured"`.
> + """
> +
> + self._test_archiver_mode('configured',
> 'selftest-ed-1.14.1-r0-configured.tar.gz')
> +
> + def test_archiver_mode_recipe(self):
> + """
> + Test that the archiver works in with `ARCHIVER_MODE[recipe] =
> "1"`.
> + """
> +
> + self._test_archiver_mode('patched',
> 'selftest-ed-1.14.1-r0-recipe.tar.gz',
> + 'ARCHIVER_MODE[recipe] = "1"\n')
> +
> + def test_archiver_mode_diff(self):
> + """
> + Test that the archiver works in with `ARCHIVER_MODE[diff] =
> "1"`.
> + Exclusions controlled by `ARCHIVER_MODE[diff-exclude]` are not
> yet tested.
> + """
> +
> + self._test_archiver_mode('patched',
> 'selftest-ed-1.14.1-r0-diff.gz',
> + 'ARCHIVER_MODE[diff] = "1"\n')
> +
> + def test_archiver_mode_dumpdata(self):
> + """
> + Test that the archiver works in with `ARCHIVER_MODE[dumpdata]
> = "1"`.
> + """
> +
> + self._test_archiver_mode('patched',
> 'selftest-ed-1.14.1-r0-showdata.dump',
> + 'ARCHIVER_MODE[dumpdata] = "1"\n')
> --
> 2.24.0
>
>
--
Paul Barker
Managing Director & Principal Engineer
Beta Five Ltd
More information about the Openembedded-core
mailing list