aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2019-06-09 16:28:35 +0300
committerTimo Teräs <timo.teras@iki.fi>2019-06-09 16:31:28 +0300
commite713477ef5fbad466c983aba8e6d79feee3b98c1 (patch)
tree10f9d93cf44531784719a1351c718a7248a835f3
parent5680dd2c29f21a369da1d96bc106d8acc20afa2f (diff)
downloadaports-e713477ef5fbad466c983aba8e6d79feee3b98c1.tar.bz2
aports-e713477ef5fbad466c983aba8e6d79feee3b98c1.tar.xz
testing/fwupd: fix test suite in builders without usb hub
If no USB devices are found, things will fail with: Failed to get USB context: failed to init libusb: Other error [-99] Since our builders do not expose USB, the test suite fails. Try to adjust the code to deal witht hings if no USB context is available.
-rw-r--r--testing/fwupd/APKBUILD2
-rw-r--r--testing/fwupd/fixes.patch34
2 files changed, 35 insertions, 1 deletions
diff --git a/testing/fwupd/APKBUILD b/testing/fwupd/APKBUILD
index e7e5fba517..aaa6fcd076 100644
--- a/testing/fwupd/APKBUILD
+++ b/testing/fwupd/APKBUILD
@@ -71,4 +71,4 @@ package() {
sha512sums="942c6bad822dc65846d1984850798bec677b6a312100c6f5971fc9d5906c182267182ef29e0834bbd2b83fe72b11c3b6e50855d90388d2bf85e8a3b95d0a5a68 fwupd-1.2.9.tar.gz
ad569d342cf14290d4924582af92c7d634139cf04eb1d981b4a4573ed56a8f9115914adefa925c8486e1126dd4fbed36a786aad4afd07de14dd6cbdf7982b766 fwupd.initd
2f362ff98982b2038e2abfcfd698f26a06d1aff5ec1c8a4299e6dc23b85a3ef7036be62de45365772ba65578597a255309fa666f2c813f5f52ca0eab378c4135 fix-no-systemd.patch
-0298319cb5249326ef2576612165a1c4775128fcbd58a19367385816873b56d59cfdcc2d0ef8c95e92fc7a454974aede361de43f132c024272cb5fce7b6dbbcb fixes.patch"
+c08a0319af9fe17ccb13dd786a7ed3e2b9ebd6bf1423323ebccd19028ffb209b585d306e86aa075eb83c4dc2bbb0154f5487cbe53641d2517b3acf1e0028ac06 fixes.patch"
diff --git a/testing/fwupd/fixes.patch b/testing/fwupd/fixes.patch
index 896c3d138b..1decc8f96b 100644
--- a/testing/fwupd/fixes.patch
+++ b/testing/fwupd/fixes.patch
@@ -16,3 +16,37 @@ diff -ru fwupd-1.2.9.orig/data/tests/builder/startup.sh fwupd-1.2.9/data/tests/b
-#/bin/sh
+#!/bin/sh
cat source.bin | rev > firmware.bin
+diff -ru fwupd-1.2.9.orig/src/fu-engine.c fwupd-1.2.9/src/fu-engine.c
+--- fwupd-1.2.9.orig/src/fu-engine.c 2019-05-20 13:17:42.000000000 +0300
++++ fwupd-1.2.9/src/fu-engine.c 2019-06-09 16:26:11.573561932 +0300
+@@ -4517,7 +4517,6 @@
+ self->usb_ctx = g_usb_context_new (error);
+ if (self->usb_ctx == NULL) {
+ g_prefix_error (error, "Failed to get USB context: ");
+- return FALSE;
+ }
+
+ /* delete old data files */
+@@ -4562,13 +4561,15 @@
+ fu_engine_plugins_coldplug (self, FALSE);
+
+ /* coldplug USB devices */
+- g_signal_connect (self->usb_ctx, "device-added",
+- G_CALLBACK (fu_engine_usb_device_added_cb),
+- self);
+- g_signal_connect (self->usb_ctx, "device-removed",
+- G_CALLBACK (fu_engine_usb_device_removed_cb),
+- self);
+- g_usb_context_enumerate (self->usb_ctx);
++ if (self->usb_ctx != NULL) {
++ g_signal_connect (self->usb_ctx, "device-added",
++ G_CALLBACK (fu_engine_usb_device_added_cb),
++ self);
++ g_signal_connect (self->usb_ctx, "device-removed",
++ G_CALLBACK (fu_engine_usb_device_removed_cb),
++ self);
++ g_usb_context_enumerate (self->usb_ctx);
++ }
+
+ /* coldplug udev devices */
+ fu_engine_enumerate_udev (self);