| # SPDX-License-Identifier: LGPL-2.1+ |
| |
| test_data_files = ''' |
| a.service |
| a-conj.service |
| b.service |
| basic.target |
| c.service |
| d.service |
| daughter.service |
| dml.slice |
| dml-passthrough.slice |
| dml-passthrough-empty.service |
| dml-passthrough-set-dml.service |
| dml-passthrough-set-ml.service |
| dml-override.slice |
| dml-override-empty.service |
| dml-discard.slice |
| dml-discard-empty.service |
| dml-discard-set-ml.service |
| e.service |
| end.service |
| f.service |
| g.service |
| grandchild.service |
| h.service |
| hello-after-sleep.target |
| hello.service |
| hwdb.d/10-bad.hwdb |
| i.service |
| journal-data/journal-1.txt |
| journal-data/journal-2.txt |
| nomem.slice |
| nomemleaf.service |
| parent-deep.slice |
| parent.slice |
| sched_idle_bad.service |
| sched_idle_ok.service |
| sched_rr_bad.service |
| sched_rr_change.service |
| sched_rr_ok.service |
| shutdown.target |
| sleep.service |
| sockets.target |
| son.service |
| sysinit.target |
| test-execute/exec-basic.service |
| test-execute/exec-ambientcapabilities-merge-nfsnobody.service |
| test-execute/exec-ambientcapabilities-merge-nobody.service |
| test-execute/exec-ambientcapabilities-merge.service |
| test-execute/exec-ambientcapabilities-nfsnobody.service |
| test-execute/exec-ambientcapabilities-nobody.service |
| test-execute/exec-ambientcapabilities.service |
| test-execute/exec-bindpaths.service |
| test-execute/exec-capabilityboundingset-invert.service |
| test-execute/exec-capabilityboundingset-merge.service |
| test-execute/exec-capabilityboundingset-reset.service |
| test-execute/exec-capabilityboundingset-simple.service |
| test-execute/exec-condition-failed.service |
| test-execute/exec-condition-skip.service |
| test-execute/exec-cpuaffinity1.service |
| test-execute/exec-cpuaffinity2.service |
| test-execute/exec-cpuaffinity3.service |
| test-execute/exec-dynamicuser-fixeduser-adm.service |
| test-execute/exec-dynamicuser-fixeduser-games.service |
| test-execute/exec-dynamicuser-fixeduser-one-supplementarygroup.service |
| test-execute/exec-dynamicuser-fixeduser.service |
| test-execute/exec-dynamicuser-statedir-migrate-step1.service |
| test-execute/exec-dynamicuser-statedir-migrate-step2.service |
| test-execute/exec-dynamicuser-statedir.service |
| test-execute/exec-dynamicuser-supplementarygroups.service |
| test-execute/exec-environment-no-substitute.service |
| test-execute/exec-environment-empty.service |
| test-execute/exec-environment-multiple.service |
| test-execute/exec-environment.service |
| test-execute/exec-environmentfile.service |
| test-execute/exec-group-nfsnobody.service |
| test-execute/exec-group-nobody.service |
| test-execute/exec-group-nogroup.service |
| test-execute/exec-group.service |
| test-execute/exec-ignoresigpipe-no.service |
| test-execute/exec-ignoresigpipe-yes.service |
| test-execute/exec-inaccessiblepaths-mount-propagation.service |
| test-execute/exec-inaccessiblepaths-sys.service |
| test-execute/exec-ioschedulingclass-best-effort.service |
| test-execute/exec-ioschedulingclass-idle.service |
| test-execute/exec-ioschedulingclass-none.service |
| test-execute/exec-ioschedulingclass-realtime.service |
| test-execute/exec-oomscoreadjust-negative.service |
| test-execute/exec-oomscoreadjust-positive.service |
| test-execute/exec-passenvironment-absent.service |
| test-execute/exec-passenvironment-empty.service |
| test-execute/exec-passenvironment-repeated.service |
| test-execute/exec-passenvironment.service |
| test-execute/exec-personality-aarch64.service |
| test-execute/exec-personality-ppc64.service |
| test-execute/exec-personality-ppc64le.service |
| test-execute/exec-personality-s390.service |
| test-execute/exec-personality-x86-64.service |
| test-execute/exec-personality-x86.service |
| test-execute/exec-privatedevices-disabled-by-prefix.service |
| test-execute/exec-privatedevices-no-capability-mknod.service |
| test-execute/exec-privatedevices-no-capability-sys-rawio.service |
| test-execute/exec-privatedevices-no.service |
| test-execute/exec-privatedevices-yes-with-group.service |
| test-execute/exec-privatedevices-yes-capability-mknod.service |
| test-execute/exec-privatedevices-yes-capability-sys-rawio.service |
| test-execute/exec-privatedevices-yes.service |
| test-execute/exec-privatenetwork-yes.service |
| test-execute/exec-privatetmp-no.service |
| test-execute/exec-privatetmp-yes.service |
| test-execute/exec-protecthome-tmpfs-vs-protectsystem-strict.service |
| test-execute/exec-protectkernellogs-yes-capabilities.service |
| test-execute/exec-protectkernellogs-no-capabilities.service |
| test-execute/exec-protectkernelmodules-no-capabilities.service |
| test-execute/exec-protectkernelmodules-yes-capabilities.service |
| test-execute/exec-protectkernelmodules-yes-mount-propagation.service |
| test-execute/exec-readonlypaths-mount-propagation.service |
| test-execute/exec-readonlypaths-simple.service |
| test-execute/exec-readonlypaths-with-bindpaths.service |
| test-execute/exec-readonlypaths.service |
| test-execute/exec-readwritepaths-mount-propagation.service |
| test-execute/exec-restrictnamespaces-merge-all.service |
| test-execute/exec-restrictnamespaces-merge-and.service |
| test-execute/exec-restrictnamespaces-merge-or.service |
| test-execute/exec-restrictnamespaces-mnt-blacklist.service |
| test-execute/exec-restrictnamespaces-mnt.service |
| test-execute/exec-restrictnamespaces-no.service |
| test-execute/exec-restrictnamespaces-yes.service |
| test-execute/exec-runtimedirectory-mode.service |
| test-execute/exec-runtimedirectory-owner-nfsnobody.service |
| test-execute/exec-runtimedirectory-owner-nobody.service |
| test-execute/exec-runtimedirectory-owner-nogroup.service |
| test-execute/exec-runtimedirectory-owner.service |
| test-execute/exec-runtimedirectory.service |
| test-execute/exec-specifier-interpolation.service |
| test-execute/exec-specifier.service |
| test-execute/exec-specifier@.service |
| test-execute/exec-standardinput-data.service |
| test-execute/exec-standardinput-file.service |
| test-execute/exec-standardinput-file-cat.service |
| test-execute/exec-standardoutput-file.service |
| test-execute/exec-standardoutput-append.service |
| test-execute/exec-supplementarygroups-multiple-groups-default-group-user.service |
| test-execute/exec-supplementarygroups-multiple-groups-withgid.service |
| test-execute/exec-supplementarygroups-multiple-groups-withuid.service |
| test-execute/exec-supplementarygroups-single-group-user.service |
| test-execute/exec-supplementarygroups-single-group.service |
| test-execute/exec-supplementarygroups.service |
| test-execute/exec-systemcallerrornumber-name.service |
| test-execute/exec-systemcallerrornumber-number.service |
| test-execute/exec-systemcallfilter-failing.service |
| test-execute/exec-systemcallfilter-failing2.service |
| test-execute/exec-systemcallfilter-not-failing.service |
| test-execute/exec-systemcallfilter-not-failing2.service |
| test-execute/exec-systemcallfilter-system-user-nfsnobody.service |
| test-execute/exec-systemcallfilter-system-user-nobody.service |
| test-execute/exec-systemcallfilter-system-user.service |
| test-execute/exec-systemcallfilter-with-errno-multi.service |
| test-execute/exec-systemcallfilter-with-errno-name.service |
| test-execute/exec-systemcallfilter-with-errno-number.service |
| test-execute/exec-temporaryfilesystem-options.service |
| test-execute/exec-temporaryfilesystem-ro.service |
| test-execute/exec-temporaryfilesystem-rw.service |
| test-execute/exec-temporaryfilesystem-usr.service |
| test-execute/exec-umask-0177.service |
| test-execute/exec-umask-default.service |
| test-execute/exec-unsetenvironment.service |
| test-execute/exec-user-nfsnobody.service |
| test-execute/exec-user-nobody.service |
| test-execute/exec-user.service |
| test-execute/exec-workingdirectory.service |
| test-execute/exec-workingdirectory-trailing-dot.service |
| test-path/basic.target |
| test-path/path-changed.path |
| test-path/path-changed.service |
| test-path/path-directorynotempty.path |
| test-path/path-directorynotempty.service |
| test-path/path-exists.path |
| test-path/path-exists.service |
| test-path/path-existsglob.path |
| test-path/path-existsglob.service |
| test-path/path-makedirectory.path |
| test-path/path-makedirectory.service |
| test-path/path-modified.path |
| test-path/path-modified.service |
| test-path/path-mycustomunit.service |
| test-path/path-service.service |
| test-path/path-unit.path |
| test-path/paths.target |
| test-path/sysinit.target |
| test-umount/empty.mountinfo |
| test-umount/example.swaps |
| test-umount/garbled.mountinfo |
| test-umount/rhbug-1554943.mountinfo |
| testsuite.target |
| timers.target |
| unit-with-.service.d/20-override.conf |
| unit-with-multiple-.service.d/20-override.conf |
| unit-with-multiple-.service.d/30-override.conf |
| unit-with-multiple-dashes.service |
| unit-with-multiple-dashes.service.d/10-override.conf |
| unstoppable.service |
| '''.split() |
| |
| if conf.get('ENABLE_RESOLVE') == 1 |
| test_data_files += ''' |
| test-resolve/_openpgpkey.fedoraproject.org.pkts |
| test-resolve/fedoraproject.org.pkts |
| test-resolve/gandi.net.pkts |
| test-resolve/google.com.pkts |
| test-resolve/root.pkts |
| test-resolve/sw1a1aa-sw1a2aa-sw1a2ab-sw1a2ac.find.me.uk.pkts |
| test-resolve/teamits.com.pkts |
| test-resolve/zbyszek@fedoraproject.org.pkts |
| test-resolve/_443._tcp.fedoraproject.org.pkts |
| test-resolve/kyhwana.org.pkts |
| test-resolve/fake-caa.pkts |
| '''.split() |
| endif |
| |
| if install_tests |
| foreach file : test_data_files |
| subdir = file.split('/')[0] |
| if subdir == file |
| subdir = '' |
| endif |
| |
| install_data(file, |
| install_dir : testsdir + '/testdata/' + subdir) |
| endforeach |
| endif |
| |
| ############################################################ |
| |
| rule_syntax_check_py = find_program('rule-syntax-check.py') |
| if want_tests != 'false' |
| test('rule-syntax-check', |
| rule_syntax_check_py, |
| args : all_rules) |
| endif |
| |
| ############################################################ |
| |
| if conf.get('HAVE_SYSV_COMPAT') == 1 |
| sysv_generator_test_py = find_program('sysv-generator-test.py') |
| if want_tests != 'false' |
| test('sysv-generator-test', |
| sysv_generator_test_py) |
| endif |
| endif |
| |
| ############################################################ |
| |
| if install_tests |
| install_data('run-unit-tests.py', |
| install_mode : 'rwxr-xr-x', |
| install_dir : testsdir) |
| endif |
| |
| ############################################################ |
| |
| # prepare test/sys tree |
| sys_script_py = find_program('sys-script.py') |
| custom_target( |
| 'sys', |
| command : [sys_script_py, meson.current_build_dir()], |
| output : 'sys', |
| build_by_default : want_tests != 'false') |
| |
| if perl.found() |
| udev_test_pl = find_program('udev-test.pl') |
| if want_tests != 'false' |
| test('udev-test', |
| udev_test_pl, |
| timeout : 180) |
| endif |
| else |
| message('Skipping udev-test because perl is not available') |
| endif |
| |
| if conf.get('ENABLE_HWDB') == 1 |
| hwdb_test_sh = find_program('hwdb-test.sh') |
| if want_tests != 'false' |
| test('hwdb-test', |
| hwdb_test_sh, |
| timeout : 90) |
| endif |
| endif |
| |
| subdir('fuzz') |