diff options
Diffstat (limited to '')
| -rw-r--r-- | tests/docker/dockerfiles/opensuse-leap.docker | 2 | ||||
| -rw-r--r-- | tests/functional/meson.build | 9 | ||||
| -rwxr-xr-x | tests/functional/test_arm_vexpress.py | 2 | ||||
| -rwxr-xr-x | tests/functional/test_m68k_mcf5208evb.py | 2 | ||||
| -rwxr-xr-x | tests/functional/test_or1k_sim.py | 2 | ||||
| -rwxr-xr-x | tests/functional/test_ppc64_e500.py | 2 | ||||
| -rwxr-xr-x | tests/functional/test_ppc_mac.py | 2 | ||||
| -rwxr-xr-x | tests/functional/test_sh4_r2d.py | 2 | ||||
| -rwxr-xr-x | tests/functional/test_sparc_sun4m.py | 2 | ||||
| -rwxr-xr-x | tests/functional/test_xtensa_lx60.py | 2 | ||||
| m--------- | tests/lcitool/libvirt-ci | 0 | ||||
| -rwxr-xr-x | tests/lcitool/refresh | 2 | ||||
| -rw-r--r-- | tests/qtest/meson.build | 1 | ||||
| -rw-r--r-- | tests/qtest/migration-test.c | 12 | ||||
| -rw-r--r-- | tests/unit/test-crypto-hash.c | 46 | ||||
| -rw-r--r-- | tests/unit/test-io-channel-socket.c | 6 |
16 files changed, 77 insertions, 17 deletions
diff --git a/tests/docker/dockerfiles/opensuse-leap.docker b/tests/docker/dockerfiles/opensuse-leap.docker index a64fcacae2..a1c3b1cb75 100644 --- a/tests/docker/dockerfiles/opensuse-leap.docker +++ b/tests/docker/dockerfiles/opensuse-leap.docker @@ -4,7 +4,7 @@ # # https://gitlab.com/libvirt/libvirt-ci -FROM registry.opensuse.org/opensuse/leap:15.5 +FROM registry.opensuse.org/opensuse/leap:15.6 RUN zypper update -y && \ zypper install -y \ diff --git a/tests/functional/meson.build b/tests/functional/meson.build index 7713f8eb55..c90c02517a 100644 --- a/tests/functional/meson.build +++ b/tests/functional/meson.build @@ -11,15 +11,18 @@ endif # Timeouts for individual tests that can be slow e.g. with debugging enabled test_timeouts = { + 'aarch64_raspi4' : 120, 'aarch64_sbsaref' : 600, 'aarch64_virt' : 360, 'acpi_bits' : 240, + 'arm_raspi2' : 120, + 'mips_malta' : 120, 'netdev_ethtool' : 180, 'ppc_40p' : 240, 'ppc64_hv' : 1000, - 'ppc64_powernv' : 120, - 'ppc64_pseries' : 120, - 's390x_ccw_virtio' : 180, + 'ppc64_powernv' : 240, + 'ppc64_pseries' : 240, + 's390x_ccw_virtio' : 240, } tests_generic_system = [ diff --git a/tests/functional/test_arm_vexpress.py b/tests/functional/test_arm_vexpress.py index cc6015112b..6bd6290030 100755 --- a/tests/functional/test_arm_vexpress.py +++ b/tests/functional/test_arm_vexpress.py @@ -11,7 +11,7 @@ from qemu_test.utils import archive_extract class VExpressTest(LinuxKernelTest): ASSET_DAY16 = Asset( - 'https://www.qemu-advent-calendar.org/2018/download/day16.tar.xz', + 'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day16.tar.xz', '63311adb2d4c4e7a73214a86d29988add87266a909719c56acfadd026b4110a7') def test_arm_vexpressa9(self): diff --git a/tests/functional/test_m68k_mcf5208evb.py b/tests/functional/test_m68k_mcf5208evb.py index 869ccc88df..00c59590c3 100755 --- a/tests/functional/test_m68k_mcf5208evb.py +++ b/tests/functional/test_m68k_mcf5208evb.py @@ -13,7 +13,7 @@ from qemu_test.utils import archive_extract class Mcf5208EvbTest(LinuxKernelTest): ASSET_DAY07 = Asset( - 'https://www.qemu-advent-calendar.org/2018/download/day07.tar.xz', + 'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day07.tar.xz', '753c2f3837126b7c6ba92d0b1e0b156e8a2c5131d2d576bb0b9a763fae73c08a') def test_m68k_mcf5208evb(self): diff --git a/tests/functional/test_or1k_sim.py b/tests/functional/test_or1k_sim.py index aa2a1f08d2..10e0437c50 100755 --- a/tests/functional/test_or1k_sim.py +++ b/tests/functional/test_or1k_sim.py @@ -13,7 +13,7 @@ from qemu_test.utils import archive_extract class OpenRISC1kSimTest(LinuxKernelTest): ASSET_DAY20 = Asset( - 'https://www.qemu-advent-calendar.org/2018/download/day20.tar.xz', + 'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day20.tar.xz', 'ff9d7dd7c6bdba325bd85ee85c02db61ff653e129558aeffe6aff55bffb6763a') def test_or1k_sim(self): diff --git a/tests/functional/test_ppc64_e500.py b/tests/functional/test_ppc64_e500.py index 3558ae0c8c..f1af92373e 100755 --- a/tests/functional/test_ppc64_e500.py +++ b/tests/functional/test_ppc64_e500.py @@ -10,7 +10,7 @@ from qemu_test.utils import archive_extract class E500Test(LinuxKernelTest): ASSET_DAY19 = Asset( - 'https://www.qemu-advent-calendar.org/2018/download/day19.tar.xz', + 'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day19.tar.xz', '20b1bb5a8488c664defbb5d283addc91a05335a936c63b3f5ff7eee74b725755') def test_ppc64_e500(self): diff --git a/tests/functional/test_ppc_mac.py b/tests/functional/test_ppc_mac.py index a6b1ca2d4c..3f45e37a45 100755 --- a/tests/functional/test_ppc_mac.py +++ b/tests/functional/test_ppc_mac.py @@ -10,7 +10,7 @@ from qemu_test.utils import archive_extract class MacTest(LinuxKernelTest): ASSET_DAY15 = Asset( - 'https://www.qemu-advent-calendar.org/2018/download/day15.tar.xz', + 'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day15.tar.xz', '03e0757c131d2959decf293a3572d3b96c5a53587165bf05ce41b2818a2bccd5') def do_day15_test(self): diff --git a/tests/functional/test_sh4_r2d.py b/tests/functional/test_sh4_r2d.py index 5fe8cf9f8d..c3cfff79ad 100755 --- a/tests/functional/test_sh4_r2d.py +++ b/tests/functional/test_sh4_r2d.py @@ -13,7 +13,7 @@ from unittest import skipUnless class R2dTest(LinuxKernelTest): ASSET_DAY09 = Asset( - 'https://www.qemu-advent-calendar.org/2018/download/day09.tar.xz', + 'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day09.tar.xz', 'a61b44d2630a739d1380cc4ff4b80981d47ccfd5992f1484ccf48322c35f09ac') # This test has a 6-10% failure rate on various hosts that look diff --git a/tests/functional/test_sparc_sun4m.py b/tests/functional/test_sparc_sun4m.py index b334375820..573f85222a 100755 --- a/tests/functional/test_sparc_sun4m.py +++ b/tests/functional/test_sparc_sun4m.py @@ -11,7 +11,7 @@ from qemu_test.utils import archive_extract class Sun4mTest(LinuxKernelTest): ASSET_DAY11 = Asset( - 'https://www.qemu-advent-calendar.org/2018/download/day11.tar.xz', + 'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day11.tar.xz', 'c776533ba756bf4dd3f1fc4c024fb50ef0d853e05c5f5ddf0900a32d1eaa49e0') def test_sparc_ss20(self): diff --git a/tests/functional/test_xtensa_lx60.py b/tests/functional/test_xtensa_lx60.py index 8ce5206a4f..d4ad92dc6c 100755 --- a/tests/functional/test_xtensa_lx60.py +++ b/tests/functional/test_xtensa_lx60.py @@ -11,7 +11,7 @@ from qemu_test.utils import archive_extract class XTensaLX60Test(LinuxKernelTest): ASSET_DAY02 = Asset( - 'https://www.qemu-advent-calendar.org/2018/download/day02.tar.xz', + 'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day02.tar.xz', '68ff07f9b3fd3df36d015eb46299ba44748e94bfbb2d5295fddc1a8d4a9fd324') def test_xtensa_lx60(self): diff --git a/tests/lcitool/libvirt-ci b/tests/lcitool/libvirt-ci -Subproject 789b4601bce4e01f43fdb6ad4ce5ab4e4667444 +Subproject c0fc6fab5cdc839a70d4148aa9809504bc96196 diff --git a/tests/lcitool/refresh b/tests/lcitool/refresh index 1ae0962f04..0f16f4d525 100755 --- a/tests/lcitool/refresh +++ b/tests/lcitool/refresh @@ -228,8 +228,8 @@ try: # Cirrus packages lists for GitLab # generate_cirrus("freebsd-14") - generate_cirrus("macos-13") generate_cirrus("macos-14") + generate_cirrus("macos-15") # # VM packages lists diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build index 2b90abf000..b207e38696 100644 --- a/tests/qtest/meson.build +++ b/tests/qtest/meson.build @@ -7,6 +7,7 @@ slow_qtests = { 'migration-test' : 480, 'npcm7xx_pwm-test': 300, 'npcm7xx_watchdog_timer-test': 120, + 'qmp-cmd-test' : 120, 'qom-test' : 900, 'stm32l4x5_usart-test' : 600, 'test-hmp' : 240, diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c index 814ec109a6..95e45b5029 100644 --- a/tests/qtest/migration-test.c +++ b/tests/qtest/migration-test.c @@ -3267,6 +3267,16 @@ static void test_multifd_tcp_cancel(void) qtest_wait_qemu(to); qtest_quit(to); + /* + * Ensure the source QEMU finishes its cancellation process before we + * proceed with the setup of the next migration. The test_migrate_start() + * function and others might want to interact with the source in a way that + * is not possible while the migration is not canceled properly. For + * example, setting migration capabilities when the migration is still + * running leads to an error. + */ + wait_for_migration_status(from, "cancelled", NULL); + args = (MigrateStart){ .only_target = true, }; @@ -3282,8 +3292,6 @@ static void test_multifd_tcp_cancel(void) /* Start incoming migration from the 1st socket */ migrate_incoming_qmp(to2, "tcp:127.0.0.1:0", "{}"); - wait_for_migration_status(from, "cancelled", NULL); - migrate_ensure_non_converge(from); migrate_qmp(from, to2, NULL, NULL, "{}"); diff --git a/tests/unit/test-crypto-hash.c b/tests/unit/test-crypto-hash.c index 124d204485..e5829ca766 100644 --- a/tests/unit/test-crypto-hash.c +++ b/tests/unit/test-crypto-hash.c @@ -1,6 +1,7 @@ /* * QEMU Crypto hash algorithms * + * Copyright (c) 2024 Seagate Technology LLC and/or its Affiliates * Copyright (c) 2015 Red Hat, Inc. * * This library is free software; you can redistribute it and/or @@ -241,6 +242,50 @@ static void test_hash_base64(void) } } +static void test_hash_accumulate(void) +{ + size_t i; + + for (i = 0; i < G_N_ELEMENTS(expected_outputs) ; i++) { + g_autoptr(QCryptoHash) hash = NULL; + struct iovec iov[] = { + { .iov_base = (char *)INPUT_TEXT1, .iov_len = strlen(INPUT_TEXT1) }, + { .iov_base = (char *)INPUT_TEXT2, .iov_len = strlen(INPUT_TEXT2) }, + { .iov_base = (char *)INPUT_TEXT3, .iov_len = strlen(INPUT_TEXT3) }, + }; + g_autofree uint8_t *result = NULL; + size_t resultlen = 0; + int ret; + size_t j; + + if (!qcrypto_hash_supports(i)) { + continue; + } + + hash = qcrypto_hash_new(i, &error_fatal); + g_assert(hash != NULL); + + /* Add each iovec to the hash context separately */ + for (j = 0; j < G_N_ELEMENTS(iov); j++) { + ret = qcrypto_hash_updatev(hash, + &iov[j], 1, + &error_fatal); + + g_assert(ret == 0); + } + + ret = qcrypto_hash_finalize_bytes(hash, &result, &resultlen, + &error_fatal); + + g_assert(ret == 0); + g_assert(resultlen == expected_lens[i]); + for (j = 0; j < resultlen; j++) { + g_assert(expected_outputs[i][j * 2] == hex[(result[j] >> 4) & 0xf]); + g_assert(expected_outputs[i][j * 2 + 1] == hex[result[j] & 0xf]); + } + } +} + int main(int argc, char **argv) { int ret = qcrypto_init(&error_fatal); @@ -252,5 +297,6 @@ int main(int argc, char **argv) g_test_add_func("/crypto/hash/prealloc", test_hash_prealloc); g_test_add_func("/crypto/hash/digest", test_hash_digest); g_test_add_func("/crypto/hash/base64", test_hash_base64); + g_test_add_func("/crypto/hash/accumulate", test_hash_accumulate); return g_test_run(); } diff --git a/tests/unit/test-io-channel-socket.c b/tests/unit/test-io-channel-socket.c index b964bb202d..dc7be96e9c 100644 --- a/tests/unit/test-io-channel-socket.c +++ b/tests/unit/test-io-channel-socket.c @@ -506,7 +506,7 @@ static void test_io_channel_unix_listen_cleanup(void) { QIOChannelSocket *ioc; struct sockaddr_un un; - int sock; + int sock, ret = 0; #define TEST_SOCKET "test-io-channel-socket.sock" @@ -519,7 +519,9 @@ static void test_io_channel_unix_listen_cleanup(void) un.sun_family = AF_UNIX; snprintf(un.sun_path, sizeof(un.sun_path), "%s", TEST_SOCKET); unlink(TEST_SOCKET); - bind(sock, (struct sockaddr *)&un, sizeof(un)); + ret = bind(sock, (struct sockaddr *)&un, sizeof(un)); + g_assert_cmpint(ret, ==, 0); + ioc->fd = sock; ioc->localAddrLen = sizeof(ioc->localAddr); getsockname(sock, (struct sockaddr *)&ioc->localAddr, |