oeqa: Test bitbake --skip-setsecene

Tests the bitbake --skip-setscene option to verify that it correctly
reuses tasks previously restored from sstate, but doesn't execute new
sstate tasks

(From OE-Core rev: af10c620b1496bf5224d0628a92cb42e9cd362a8)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Joshua Watt
2019-07-01 13:23:06 -05:00
committed by Richard Purdie
parent 26f7e4e660
commit 17268ae841

View File

@@ -242,6 +242,36 @@ INHERIT_remove = \"report-error\"
self.assertIn('_setscene', task, 'A task different from _setscene ran: %s.\n'
'Executed tasks were: %s' % (task, str(tasks)))
def test_skip_setscene(self):
test_recipe = 'ed'
bitbake(test_recipe)
bitbake('-c clean %s' % test_recipe)
ret = bitbake('--setscene-only %s' % test_recipe)
tasks = re.findall(r'task\s+(do_\S+):', ret.output)
for task in tasks:
self.assertIn('_setscene', task, 'A task different from _setscene ran: %s.\n'
'Executed tasks were: %s' % (task, str(tasks)))
# Run without setscene. Should do nothing
ret = bitbake('--skip-setscene %s' % test_recipe)
tasks = re.findall(r'task\s+(do_\S+):', ret.output)
self.assertFalse(tasks, 'Tasks %s ran when they should not have' % (str(tasks)))
# Clean (leave sstate cache) and run with --skip-setscene. No setscene
# tasks should run
bitbake('-c clean %s' % test_recipe)
ret = bitbake('--skip-setscene %s' % test_recipe)
tasks = re.findall(r'task\s+(do_\S+):', ret.output)
for task in tasks:
self.assertNotIn('_setscene', task, 'A _setscene task ran: %s.\n'
'Executed tasks were: %s' % (task, str(tasks)))
def test_bbappend_order(self):
""" Bitbake should bbappend to recipe in a predictable order """
test_recipe = 'ed'