[libvirt] [PATCH 00/11] Fix 10 tests on macOS

Roman Bolshakov r.bolshakov at yadro.com
Wed Aug 21 16:13:12 UTC 2019


Hi!

This patch series attempts to reduce the number of failing tests on macOS.

The fixes involve some funk with macOS dynamic and static linkers, dyld and
ld64, respectively.

As result, instead of 15 failing tests we get only 5.
The tests have been fixed:
  qemublocktest
  qemumonitorjsontest
  viriscsitest
  virmacmaptest
  virnetserverclienttest
  vircryptotest
  qemufirmwaretest
  domaincapstest
  commandtest
  sockettest

The tests are still failing:
  qemumemlocktest
  storagepoolxml2argvtest
  qemuxml2xmltest
  qemusecuritytest
  qemuxml2argvtest

qemucapsprobe doesn't yet works but I started working on the fix.

The failing tests depend on virpcimock that is guarded by ifdefs so no
functions are injected and the mock is no-op on macOS. How can we fix
the tests that rely on the mock? Should we select only specific tests to
run on macOS or we should make virpci mock cross-platform?  Skipping
them entirely is not an option IMO as I think qemu driver can be used on
macOS with qemu/hvf/haxm domains and the tests are helpful for the
domains.

And as soon as we get working tests and qemucapsprobe I'd want to resend hvf
patchset.

Best regards,
Roman

Roman Bolshakov (11):
  tests: Don't test octal localhost IP in sockettest on macOS
  tests: Avoid IPv4-translated IPv6 address in sockettest
  tests: Preload mocks with DYLD_INSERT_LIBRARIES on macOS
  tests: Add lib- prefix to all mocks
  tests: Remove -module flag for mocks
  tests: Drop /private CWD prefix in commandhelper
  build: Use flat namespace for libvirt on macOS
  tests: Lookup extended stat/lstat in mocks
  tests: Use flat namespace on macOS
  tests: Avoid gnulib replacements in mocks
  tests: Make references to global symbols indirect in test drivers

 configure.ac                   |   1 +
 src/Makefile.am                |   9 +-
 tests/Makefile.am              | 199 +++++++++++++++++----------------
 tests/bhyveargv2xmltest.c      |   2 +-
 tests/bhyvexml2argvtest.c      |   2 +-
 tests/bhyvexml2xmltest.c       |   2 +-
 tests/commandhelper.c          |   9 ++
 tests/domaincapstest.c         |   6 +-
 tests/fchosttest.c             |   2 +-
 tests/libxlxml2domconfigtest.c |   2 +-
 tests/nsstest.c                |   2 +-
 tests/qemucaps2xmltest.c       |   2 +-
 tests/qemucapsprobe.c          |   2 +-
 tests/qemumemlocktest.c        |   3 +-
 tests/qemumonitorjsontest.c    |   2 +-
 tests/qemuxml2argvtest.c       |   8 +-
 tests/qemuxml2xmltest.c        |   6 +-
 tests/sockettest.c             |   6 +-
 tests/testutils.c              |   4 +-
 tests/testutils.h              |  18 ++-
 tests/vircaps2xmltest.c        |   2 +-
 tests/vircgrouptest.c          |   2 +-
 tests/vircryptotest.c          |   2 +-
 tests/virfilecachetest.c       |   2 +-
 tests/virfiletest.c            |   2 +-
 tests/virfilewrapper.c         |   5 +
 tests/virfirewalltest.c        |   2 +-
 tests/virhostcputest.c         |   2 +-
 tests/virhostdevtest.c         |   2 +-
 tests/viriscsitest.c           |   3 +-
 tests/virmacmaptest.c          |   2 +-
 tests/virmock.h                |  10 ++
 tests/virmockstathelpers.c     |  18 +++
 tests/virnetdaemontest.c       |   2 +-
 tests/virnetdevbandwidthtest.c |   2 +-
 tests/virnetdevtest.c          |   2 +-
 tests/virnetserverclienttest.c |   2 +-
 tests/virnettlscontexttest.c   |   2 +-
 tests/virnettlssessiontest.c   |   2 +-
 tests/virpcitest.c             |   2 +-
 tests/virpolkittest.c          |   2 +-
 tests/virportallocatortest.c   |   2 +-
 tests/virsystemdtest.c         |   2 +-
 tests/virusbtest.c             |   2 +-
 44 files changed, 214 insertions(+), 149 deletions(-)

-- 
2.22.0




More information about the libvir-list mailing list