aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2013-09-19 11:10:34 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-09-20 12:14:32 +0100
commit72269a8fbec35c39af30fbabb1fa9ca7c5ee8d69 (patch)
tree81eab280f1d9e3191d9a19b9a70f4867a00c1e41
parent5d46c3df578f44597d8ce70add423e0c15982705 (diff)
downloadopenembedded-core-72269a8fbec35c39af30fbabb1fa9ca7c5ee8d69.tar.gz
classes/testimage-auto: add class to allow automatically running image tests
Setting TEST_IMAGE = "1" alone will now automatically run tests on the image immediately after the image is built instead of having to add INHERIT += "testimage" and run bitbake -c testimage <image> manually (but that will still work). This restores functionality that was present in the older imagetest-qemu class with IMAGETEST. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
-rw-r--r--meta/classes/image.bbclass3
-rw-r--r--meta/classes/testimage-auto.bbclass23
2 files changed, 26 insertions, 0 deletions
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 889547a441..246a4db7fc 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -16,6 +16,9 @@ RRECOMMENDS += "${PACKAGE_INSTALL_ATTEMPTONLY}"
INHIBIT_DEFAULT_DEPS = "1"
+TESTIMAGECLASS = "${@base_conditional('TEST_IMAGE', '1', 'testimage-auto', '', d)}"
+inherit ${TESTIMAGECLASS}
+
# IMAGE_FEATURES may contain any available package group
IMAGE_FEATURES ?= ""
IMAGE_FEATURES[type] = "list"
diff --git a/meta/classes/testimage-auto.bbclass b/meta/classes/testimage-auto.bbclass
new file mode 100644
index 0000000000..3d0e28994a
--- /dev/null
+++ b/meta/classes/testimage-auto.bbclass
@@ -0,0 +1,23 @@
+# Copyright (C) 2013 Intel Corporation
+#
+# Released under the MIT license (see COPYING.MIT)
+
+
+# Run tests automatically on an image after the image is constructed
+# (as opposed to testimage.bbclass alone where tests must be called
+# manually using bitbake -c testimage <image>).
+#
+# NOTE: to use this class, simply set TEST_IMAGE = "1" - no need to
+# inherit it since that will be done in image.bbclass when this variable
+# has been set.
+#
+# See testimage.bbclass for the test implementation.
+
+inherit testimage
+
+python do_testimage_auto() {
+ testimage_main(d)
+}
+addtask testimage_auto before do_build after do_rootfs
+do_testimage_auto[depends] += "qemu-native:do_populate_sysroot"
+do_testimage_auto[depends] += "qemu-helper-native:do_populate_sysroot"