##############################################################################
# unittest configuration
#
# [unittest_name]
# file = <name>.elf		# Name of the elf file to be used.
# extra_params = -append <params...>	# Additional parameters used.
# groups = <group_name1> <group_name2> ... # Used to identify test cases
#					   # with run_tests -g ...
#					   # Specify group_name=nodefault
#					   # to have test not run by default
# accel = kvm|tcg		# Optionally specify if test must run with
#				# kvm or tcg. If not specified, then kvm will
#				# be used when available.
# timeout = <duration>		# Optionally specify a timeout.
# check = <path>=<value> # check a file for a particular value before running
#			 # a test. The check line can contain multiple files
#			 # to check separated by a space but each check
#			 # parameter needs to be of the form <path>=<value>
##############################################################################

[selftest-setup]
file = selftest.elf
groups = selftest
extra_params = -append 'test 123'

[intercept]
file = intercept.elf

[emulator]
file = emulator.elf

[sieve]
file = sieve.elf
groups = selftest
# can take fairly long when KVM is nested inside z/VM
timeout = 600

[sthyi]
file = sthyi.elf

[skey]
file = skey.elf

[diag10]
file = diag10.elf

[diag308]
file = diag308.elf

[pfmf]
file = pfmf.elf

[cmm]
file = cmm.elf

[vector]
file = vector.elf

[gs]
file = gs.elf

[iep]
file = iep.elf

[cpumodel]
file = cpumodel.elf

[diag288]
file = diag288.elf
extra_params=-device diag288,id=watchdog0 --watchdog-action inject-nmi

[stsi]
file = stsi.elf
extra_params=-name kvm-unit-test --uuid 0fb84a86-727c-11ea-bc55-0242ac130003 -smp 1,maxcpus=8

[smp]
file = smp.elf
smp = 2

[sclp-1g]
file = sclp.elf
extra_params = -m 1G

[sclp-3g]
file = sclp.elf
extra_params = -m 3G
