Create an UpdateTest base class which is completely independent from swupd. To do the necessary swupd-specific operations, it should call empty stub functions. The common part in UpdateTest is preparing the OS content, including such special cases as updating the kernel, adding/removing/replacing files, changing file permissions, changing item types (file <-> symlink), changing item attributes (xattrs!). Then a SwupdUpdateTest class sub-classes UpdateTest and provides the missing functionality.
Let's use this issue here to track the UpdateTest base class. The older bug #9783 can be used for the swupd-specific parts. Note that we need to get the common part done for 2.4, because it blocks bug #11467.
Libertad, let's discuss whether this issue really can be moved from 2.4 to Future. We need something for 2.4.
The reason I set this to the future is because of the uncertainty that swupd will be the official update feature supported by Yocto now and in the future. If what I think I know is not correct then I can work on this for 2.4.
(In reply to comment #3) > The reason I set this to the future is because of the uncertainty that swupd > will be the official update feature supported by Yocto now and in the > future. If what I think I know is not correct then I can work on this for > 2.4. See comment #1. I'd like to use this issue to track the base class for image update testing and bug #9783 for the swupd-specific part. Following that logic, this bug here is needed for 2.4 - the sooner, the better.
I needed a solution for OSTree, so I wrote one. See https://github.com/intel/intel-iot-refkit/blob/master/meta-refkit-core/lib/oeqa/selftest/systemupdate/systemupdatebase.py We do not need this in OE-core. If there is interest in moving it there, we can still do that later. Therefore I consider this issue resolved.