[OE-core] [PATCH v2 2/2] oeqa/selftest: new tests for devtool upgrage feature

Paul Eggleton paul.eggleton at linux.intel.com
Wed Aug 26 16:47:50 UTC 2015


On Wednesday 26 August 2015 11:29:37 Leonardo Sandoval wrote:
> On 08/26/2015 11:15 AM, Aníbal Limón wrote:
> > Comments below.
> > 
> > On 26/08/15 02:43, leonardo.sandoval.gonzalez at linux.intel.com wrote:
> >> From: Leonardo Sandoval <leonardo.sandoval.gonzalez at linux.intel.com>
> >> 
> >> Basic tests for the devtool's upgrade feature, including:
> >>        * Parameter check
> >>        * Upgrading a real recipe (e2fsprogrs) without patching and
> >>        
> >>            checing its output
> >>        
> >>        * Devtool status after upgrade
> >> 
> >> Signed-off-by: Leonardo Sandoval
> >> <leonardo.sandoval.gonzalez at linux.intel.com>
> >> ---
> >> 
> >>   meta/lib/oeqa/selftest/devtool.py | 36
> >> 
> >> ++++++++++++++++++++++++++++++++++++
> >> 
> >>   1 file changed, 36 insertions(+)
> >> 
> >> diff --git a/meta/lib/oeqa/selftest/devtool.py
> >> b/meta/lib/oeqa/selftest/devtool.py
> >> index b59db15..f72e010 100644
> >> --- a/meta/lib/oeqa/selftest/devtool.py
> >> +++ b/meta/lib/oeqa/selftest/devtool.py
> >> 
> >> @@ -857,3 +857,39 @@ class DevtoolTests(DevtoolBase):
> >>               result = runCmd('devtool undeploy-target -c %s root@%s'
> >> 
> >> % (testrecipe, qemu.ip))
> >> 
> >>               result = runCmd('ssh %s root@%s %s' % (sshargs, qemu.ip,
> >> 
> >> testcommand), ignore_status=True)
> >> 
> >>               self.assertNotEqual(result, 0, 'undeploy-target did not
> >> 
> >> remove command as it should have')
> >> +
> >> +    def test_devtool_upgrade(self):
> >> +        # Check preconditions
> >> +        workspacedir = os.path.join(self.builddir, 'workspace')
> >> +        self.assertTrue(not os.path.exists(workspacedir), 'This test
> >> cannot be run with a workspace directory under the build directory')
> >> +        # Check parameters
> >> +        result = runCmd('devtool upgrade -h')
> >> +        for param in 'recipename srctree --version -V --branch -b
> >> --keep-temp --no-patch'.split():
> >> +            self.assertIn(param, result.output)
> >> +        # For the moment, we are using a real recipe.
> >> +        recipe='e2fsprogs'
> >> +        version='1.42.13'
> > 
> > Isn't a guarantee that this version will be newer ever (i.e. if someone
> > upgrade e2fsprogs to 1.42.13) what happen in this case?
> 
> Good question. In fact, the code will fail just in case current and
> upgrade version are the same. The tool can also do downgrades, so at the
> end it does not matter what the version is. I will correct this point
> and send a v3.
> 
> As mentioned by Paul in a previous message, we need 'upgradable' recipes
> which whenever the test is done, it can be upgrade. The only point here
> is that we need a tarball somewhere, so the URL is always live. Not sure
> if poky repository is a good place for the latter, any suggestion?

This is what we have meta-selftest for. We can put a recipe (or multiple 
recipes) in there that's named specially so as not to overlap with one in OE-
Core and is a known old version.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the Openembedded-core mailing list