mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-11-17 10:01:01 +03:00
Move platform independent tests to a shared runfile
Tests that aren't limited to running on Linux can be moved to a common runfile to be shared with other platforms. The test runner and wrapper script are enhanced to allow specifying multiple runfiles as a comma-separated list. The default runfiles are now "common.run,PLATFORM.run" where PLATFORM is determined at run time. Sections in runfiles that share a path with another runfile can append a colon separator and an identifier to the path in the section name, ie `[tests/functional/atime:Linux]`, to avoid overriding the tests specified by other runfiles. Reviewed-by: Jorgen Lundman <lundman@lundman.net> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: John Kennedy <john.kennedy@delphix.com> Signed-off-by: Ryan Moeller <ryan@ixsystems.com> Closes #9391
This commit is contained in:
parent
ca5777793e
commit
5e74ac51c7
@ -37,7 +37,8 @@ CLEANUPALL="no"
|
|||||||
LOOPBACK="yes"
|
LOOPBACK="yes"
|
||||||
STACK_TRACER="no"
|
STACK_TRACER="no"
|
||||||
FILESIZE="4G"
|
FILESIZE="4G"
|
||||||
RUNFILE=${RUNFILE:-"linux.run"}
|
DEFAULT_RUNFILES="common.run,$(uname | tr '[:upper:]' '[:lower:]').run"
|
||||||
|
RUNFILES=${RUNFILES:-$DEFAULT_RUNFILES}
|
||||||
FILEDIR=${FILEDIR:-/var/tmp}
|
FILEDIR=${FILEDIR:-/var/tmp}
|
||||||
DISKS=${DISKS:-""}
|
DISKS=${DISKS:-""}
|
||||||
SINGLETEST=()
|
SINGLETEST=()
|
||||||
@ -259,7 +260,7 @@ constrain_path() {
|
|||||||
usage() {
|
usage() {
|
||||||
cat << EOF
|
cat << EOF
|
||||||
USAGE:
|
USAGE:
|
||||||
$0 [hvqxkfS] [-s SIZE] [-r RUNFILE] [-t PATH] [-u USER]
|
$0 [hvqxkfS] [-s SIZE] [-r RUNFILES] [-t PATH] [-u USER]
|
||||||
|
|
||||||
DESCRIPTION:
|
DESCRIPTION:
|
||||||
ZFS Test Suite launch script
|
ZFS Test Suite launch script
|
||||||
@ -277,7 +278,7 @@ OPTIONS:
|
|||||||
-I NUM Number of iterations
|
-I NUM Number of iterations
|
||||||
-d DIR Use DIR for files and loopback devices
|
-d DIR Use DIR for files and loopback devices
|
||||||
-s SIZE Use vdevs of SIZE (default: 4G)
|
-s SIZE Use vdevs of SIZE (default: 4G)
|
||||||
-r RUNFILE Run tests in RUNFILE (default: linux.run)
|
-r RUNFILES Run tests in RUNFILES (default: ${DEFAULT_RUNFILES})
|
||||||
-t PATH Run single test at PATH relative to test suite
|
-t PATH Run single test at PATH relative to test suite
|
||||||
-T TAGS Comma separated list of tags (default: 'functional')
|
-T TAGS Comma separated list of tags (default: 'functional')
|
||||||
-u USER Run single test as USER (default: root)
|
-u USER Run single test as USER (default: root)
|
||||||
@ -344,7 +345,7 @@ while getopts 'hvqxkfScn:d:s:r:?t:T:u:I:' OPTION; do
|
|||||||
FILESIZE="$OPTARG"
|
FILESIZE="$OPTARG"
|
||||||
;;
|
;;
|
||||||
r)
|
r)
|
||||||
RUNFILE="$OPTARG"
|
RUNFILES="$OPTARG"
|
||||||
;;
|
;;
|
||||||
t)
|
t)
|
||||||
if [ ${#SINGLETEST[@]} -ne 0 ]; then
|
if [ ${#SINGLETEST[@]} -ne 0 ]; then
|
||||||
@ -375,14 +376,14 @@ if [ ${#SINGLETEST[@]} -ne 0 ]; then
|
|||||||
fail "-t and -T are mutually exclusive."
|
fail "-t and -T are mutually exclusive."
|
||||||
fi
|
fi
|
||||||
RUNFILE_DIR="/var/tmp"
|
RUNFILE_DIR="/var/tmp"
|
||||||
RUNFILE="zfs-tests.$$.run"
|
RUNFILES="zfs-tests.$$.run"
|
||||||
SINGLEQUIET="False"
|
SINGLEQUIET="False"
|
||||||
|
|
||||||
if [ -n "$QUIET" ]; then
|
if [ -n "$QUIET" ]; then
|
||||||
SINGLEQUIET="True"
|
SINGLEQUIET="True"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cat >$RUNFILE_DIR/$RUNFILE << EOF
|
cat >$RUNFILE_DIR/$RUNFILES << EOF
|
||||||
[DEFAULT]
|
[DEFAULT]
|
||||||
pre =
|
pre =
|
||||||
quiet = $SINGLEQUIET
|
quiet = $SINGLEQUIET
|
||||||
@ -408,7 +409,7 @@ EOF
|
|||||||
CLEANUPSCRIPT="cleanup"
|
CLEANUPSCRIPT="cleanup"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cat >>$RUNFILE_DIR/$RUNFILE << EOF
|
cat >>$RUNFILE_DIR/$RUNFILES << EOF
|
||||||
|
|
||||||
[$SINGLETESTDIR]
|
[$SINGLETESTDIR]
|
||||||
tests = ['$SINGLETESTFILE']
|
tests = ['$SINGLETESTFILE']
|
||||||
@ -425,17 +426,24 @@ fi
|
|||||||
TAGS=${TAGS:='functional'}
|
TAGS=${TAGS:='functional'}
|
||||||
|
|
||||||
#
|
#
|
||||||
# Attempt to locate the runfile describing the test workload.
|
# Attempt to locate the runfiles describing the test workload.
|
||||||
#
|
#
|
||||||
|
R=""
|
||||||
|
IFS=,
|
||||||
|
for RUNFILE in $RUNFILES; do
|
||||||
if [ -n "$RUNFILE" ]; then
|
if [ -n "$RUNFILE" ]; then
|
||||||
SAVED_RUNFILE="$RUNFILE"
|
SAVED_RUNFILE="$RUNFILE"
|
||||||
RUNFILE=$(find_runfile "$RUNFILE")
|
RUNFILE=$(find_runfile "$RUNFILE")
|
||||||
[ -z "$RUNFILE" ] && fail "Cannot find runfile: $SAVED_RUNFILE"
|
[ -z "$RUNFILE" ] && fail "Cannot find runfile: $SAVED_RUNFILE"
|
||||||
|
R+="${R:+,}${RUNFILE}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -r "$RUNFILE" ]; then
|
if [ ! -r "$RUNFILE" ]; then
|
||||||
fail "Cannot read runfile: $RUNFILE"
|
fail "Cannot read runfile: $RUNFILE"
|
||||||
fi
|
fi
|
||||||
|
done
|
||||||
|
unset IFS
|
||||||
|
RUNFILES=$R
|
||||||
|
|
||||||
#
|
#
|
||||||
# This script should not be run as root. Instead the test user, which may
|
# This script should not be run as root. Instead the test user, which may
|
||||||
@ -507,7 +515,7 @@ __ZFS_POOL_EXCLUDE="$(echo "$KEEP" | sed ':a;N;s/\n/ /g;ba')"
|
|||||||
|
|
||||||
msg
|
msg
|
||||||
msg "--- Configuration ---"
|
msg "--- Configuration ---"
|
||||||
msg "Runfile: $RUNFILE"
|
msg "Runfiles: $RUNFILES"
|
||||||
msg "STF_TOOLS: $STF_TOOLS"
|
msg "STF_TOOLS: $STF_TOOLS"
|
||||||
msg "STF_SUITE: $STF_SUITE"
|
msg "STF_SUITE: $STF_SUITE"
|
||||||
msg "STF_PATH: $STF_PATH"
|
msg "STF_PATH: $STF_PATH"
|
||||||
@ -603,12 +611,12 @@ REPORT_FILE=$(mktemp -u -t zts-report.XXXX -p "$FILEDIR")
|
|||||||
# Run all the tests as specified.
|
# Run all the tests as specified.
|
||||||
#
|
#
|
||||||
msg "${TEST_RUNNER} ${QUIET:+-q}" \
|
msg "${TEST_RUNNER} ${QUIET:+-q}" \
|
||||||
"-c \"${RUNFILE}\"" \
|
"-c \"${RUNFILES}\"" \
|
||||||
"-T \"${TAGS}\"" \
|
"-T \"${TAGS}\"" \
|
||||||
"-i \"${STF_SUITE}\"" \
|
"-i \"${STF_SUITE}\"" \
|
||||||
"-I \"${ITERATIONS}\""
|
"-I \"${ITERATIONS}\""
|
||||||
${TEST_RUNNER} ${QUIET:+-q} \
|
${TEST_RUNNER} ${QUIET:+-q} \
|
||||||
-c "${RUNFILE}" \
|
-c "${RUNFILES}" \
|
||||||
-T "${TAGS}" \
|
-T "${TAGS}" \
|
||||||
-i "${STF_SUITE}" \
|
-i "${STF_SUITE}" \
|
||||||
-I "${ITERATIONS}" \
|
-I "${ITERATIONS}" \
|
||||||
@ -630,7 +638,7 @@ fi
|
|||||||
rm -f "$RESULTS_FILE" "$REPORT_FILE"
|
rm -f "$RESULTS_FILE" "$REPORT_FILE"
|
||||||
|
|
||||||
if [ ${#SINGLETEST[@]} -ne 0 ]; then
|
if [ ${#SINGLETEST[@]} -ne 0 ]; then
|
||||||
rm -f "$RUNFILE" &>/dev/null
|
rm -f "$RUNFILES" &>/dev/null
|
||||||
fi
|
fi
|
||||||
|
|
||||||
exit ${RESULT}
|
exit ${RESULT}
|
||||||
|
@ -91,7 +91,7 @@ The following zfs-tests.sh options are supported:
|
|||||||
|
|
||||||
-s SIZE Use vdevs of SIZE (default: 4G)
|
-s SIZE Use vdevs of SIZE (default: 4G)
|
||||||
|
|
||||||
-r RUNFILE Run tests in RUNFILE (default: linux.run)
|
-r RUNFILES Run tests in RUNFILES (default: common.run,linux.run)
|
||||||
|
|
||||||
-t PATH Run single test at PATH relative to test suite
|
-t PATH Run single test at PATH relative to test suite
|
||||||
|
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
pkgdatadir = $(datadir)/@PACKAGE@/runfiles
|
pkgdatadir = $(datadir)/@PACKAGE@/runfiles
|
||||||
dist_pkgdata_DATA = \
|
dist_pkgdata_DATA = \
|
||||||
|
common.run \
|
||||||
linux.run \
|
linux.run \
|
||||||
longevity.run \
|
longevity.run \
|
||||||
perf-regression.run
|
perf-regression.run
|
||||||
|
907
tests/runfiles/common.run
Normal file
907
tests/runfiles/common.run
Normal file
@ -0,0 +1,907 @@
|
|||||||
|
#
|
||||||
|
# This file and its contents are supplied under the terms of the
|
||||||
|
# Common Development and Distribution License ("CDDL"), version 1.0.
|
||||||
|
# You may only use this file in accordance with the terms of version
|
||||||
|
# 1.0 of the CDDL.
|
||||||
|
#
|
||||||
|
# A full copy of the text of the CDDL should have accompanied this
|
||||||
|
# source. A copy of the CDDL is also available via the Internet at
|
||||||
|
# http://www.illumos.org/license/CDDL.
|
||||||
|
#
|
||||||
|
|
||||||
|
[DEFAULT]
|
||||||
|
pre = setup
|
||||||
|
quiet = False
|
||||||
|
pre_user = root
|
||||||
|
user = root
|
||||||
|
timeout = 600
|
||||||
|
post_user = root
|
||||||
|
post = cleanup
|
||||||
|
outputdir = /var/tmp/test_results
|
||||||
|
tags = ['functional']
|
||||||
|
|
||||||
|
[tests/functional/alloc_class]
|
||||||
|
tests = ['alloc_class_001_pos', 'alloc_class_002_neg', 'alloc_class_003_pos',
|
||||||
|
'alloc_class_004_pos', 'alloc_class_005_pos', 'alloc_class_006_pos',
|
||||||
|
'alloc_class_007_pos', 'alloc_class_008_pos', 'alloc_class_009_pos',
|
||||||
|
'alloc_class_010_pos', 'alloc_class_011_neg', 'alloc_class_012_pos',
|
||||||
|
'alloc_class_013_pos']
|
||||||
|
tags = ['functional', 'alloc_class']
|
||||||
|
|
||||||
|
[tests/functional/atime]
|
||||||
|
tests = ['atime_001_pos', 'atime_002_neg', 'atime_003_pos', 'root_atime_off',
|
||||||
|
'root_atime_on']
|
||||||
|
tags = ['functional', 'atime']
|
||||||
|
|
||||||
|
[tests/functional/bootfs]
|
||||||
|
tests = ['bootfs_001_pos', 'bootfs_002_neg', 'bootfs_003_pos',
|
||||||
|
'bootfs_004_neg', 'bootfs_005_neg', 'bootfs_006_pos', 'bootfs_007_pos',
|
||||||
|
'bootfs_008_pos']
|
||||||
|
tags = ['functional', 'bootfs']
|
||||||
|
|
||||||
|
[tests/functional/cache]
|
||||||
|
tests = ['cache_001_pos', 'cache_002_pos', 'cache_003_pos', 'cache_004_neg',
|
||||||
|
'cache_005_neg', 'cache_006_pos', 'cache_007_neg', 'cache_008_neg',
|
||||||
|
'cache_009_pos', 'cache_010_neg', 'cache_011_pos']
|
||||||
|
tags = ['functional', 'cache']
|
||||||
|
|
||||||
|
[tests/functional/cachefile]
|
||||||
|
tests = ['cachefile_001_pos', 'cachefile_002_pos', 'cachefile_003_pos',
|
||||||
|
'cachefile_004_pos']
|
||||||
|
tags = ['functional', 'cachefile']
|
||||||
|
|
||||||
|
[tests/functional/casenorm]
|
||||||
|
tests = ['case_all_values', 'norm_all_values', 'mixed_create_failure',
|
||||||
|
'sensitive_none_lookup', 'sensitive_none_delete',
|
||||||
|
'sensitive_formd_lookup', 'sensitive_formd_delete',
|
||||||
|
'insensitive_none_lookup', 'insensitive_none_delete',
|
||||||
|
'insensitive_formd_lookup', 'insensitive_formd_delete',
|
||||||
|
'mixed_none_lookup', 'mixed_none_lookup_ci', 'mixed_none_delete',
|
||||||
|
'mixed_formd_lookup', 'mixed_formd_lookup_ci', 'mixed_formd_delete']
|
||||||
|
tags = ['functional', 'casenorm']
|
||||||
|
|
||||||
|
[tests/functional/channel_program/lua_core]
|
||||||
|
tests = ['tst.args_to_lua', 'tst.divide_by_zero', 'tst.exists',
|
||||||
|
'tst.integer_illegal', 'tst.integer_overflow', 'tst.language_functions_neg',
|
||||||
|
'tst.language_functions_pos', 'tst.large_prog', 'tst.libraries',
|
||||||
|
'tst.memory_limit', 'tst.nested_neg', 'tst.nested_pos', 'tst.nvlist_to_lua',
|
||||||
|
'tst.recursive_neg', 'tst.recursive_pos', 'tst.return_large',
|
||||||
|
'tst.return_nvlist_neg', 'tst.return_nvlist_pos',
|
||||||
|
'tst.return_recursive_table', 'tst.timeout']
|
||||||
|
tags = ['functional', 'channel_program', 'lua_core']
|
||||||
|
|
||||||
|
[tests/functional/channel_program/synctask_core]
|
||||||
|
tests = ['tst.destroy_fs', 'tst.destroy_snap', 'tst.get_count_and_limit',
|
||||||
|
'tst.get_index_props', 'tst.get_mountpoint', 'tst.get_neg',
|
||||||
|
'tst.get_number_props', 'tst.get_string_props', 'tst.get_type',
|
||||||
|
'tst.get_userquota', 'tst.get_written', 'tst.list_bookmarks',
|
||||||
|
'tst.list_children', 'tst.list_clones', 'tst.list_holds',
|
||||||
|
'tst.list_snapshots', 'tst.list_system_props',
|
||||||
|
'tst.list_user_props', 'tst.parse_args_neg','tst.promote_conflict',
|
||||||
|
'tst.promote_multiple', 'tst.promote_simple', 'tst.rollback_mult',
|
||||||
|
'tst.rollback_one', 'tst.snapshot_destroy', 'tst.snapshot_neg',
|
||||||
|
'tst.snapshot_recursive', 'tst.snapshot_simple', 'tst.terminate_by_signal']
|
||||||
|
tags = ['functional', 'channel_program', 'synctask_core']
|
||||||
|
|
||||||
|
[tests/functional/checksum]
|
||||||
|
tests = ['run_edonr_test', 'run_sha2_test', 'run_skein_test',
|
||||||
|
'filetest_001_pos']
|
||||||
|
tags = ['functional', 'checksum']
|
||||||
|
|
||||||
|
[tests/functional/clean_mirror]
|
||||||
|
tests = [ 'clean_mirror_001_pos', 'clean_mirror_002_pos',
|
||||||
|
'clean_mirror_003_pos', 'clean_mirror_004_pos']
|
||||||
|
tags = ['functional', 'clean_mirror']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zdb]
|
||||||
|
tests = ['zdb_001_neg', 'zdb_002_pos', 'zdb_003_pos', 'zdb_004_pos',
|
||||||
|
'zdb_005_pos', 'zdb_006_pos']
|
||||||
|
pre =
|
||||||
|
post =
|
||||||
|
tags = ['functional', 'cli_root', 'zdb']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs]
|
||||||
|
tests = ['zfs_001_neg', 'zfs_002_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_bookmark]
|
||||||
|
tests = ['zfs_bookmark_cliargs']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_bookmark']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_change-key]
|
||||||
|
tests = ['zfs_change-key', 'zfs_change-key_child', 'zfs_change-key_format',
|
||||||
|
'zfs_change-key_inherit', 'zfs_change-key_load', 'zfs_change-key_location',
|
||||||
|
'zfs_change-key_pbkdf2iters', 'zfs_change-key_clones']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_change-key']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_clone]
|
||||||
|
tests = ['zfs_clone_001_neg', 'zfs_clone_002_pos', 'zfs_clone_003_pos',
|
||||||
|
'zfs_clone_004_pos', 'zfs_clone_005_pos', 'zfs_clone_006_pos',
|
||||||
|
'zfs_clone_007_pos', 'zfs_clone_008_neg', 'zfs_clone_009_neg',
|
||||||
|
'zfs_clone_010_pos', 'zfs_clone_encrypted', 'zfs_clone_deeply_nested']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_clone']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_copies]
|
||||||
|
tests = ['zfs_copies_001_pos', 'zfs_copies_002_pos', 'zfs_copies_003_pos',
|
||||||
|
'zfs_copies_004_neg', 'zfs_copies_005_neg', 'zfs_copies_006_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_copies']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_create]
|
||||||
|
tests = ['zfs_create_001_pos', 'zfs_create_002_pos', 'zfs_create_003_pos',
|
||||||
|
'zfs_create_004_pos', 'zfs_create_005_pos', 'zfs_create_006_pos',
|
||||||
|
'zfs_create_007_pos', 'zfs_create_008_neg', 'zfs_create_009_neg',
|
||||||
|
'zfs_create_010_neg', 'zfs_create_011_pos', 'zfs_create_012_pos',
|
||||||
|
'zfs_create_013_pos', 'zfs_create_014_pos', 'zfs_create_encrypted',
|
||||||
|
'zfs_create_crypt_combos', 'zfs_create_dryrun', 'zfs_create_verbose']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_create']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_destroy]
|
||||||
|
tests = ['zfs_clone_livelist_condense_and_disable',
|
||||||
|
'zfs_clone_livelist_condense_races', 'zfs_destroy_001_pos',
|
||||||
|
'zfs_destroy_002_pos', 'zfs_destroy_003_pos',
|
||||||
|
'zfs_destroy_004_pos', 'zfs_destroy_005_neg', 'zfs_destroy_006_neg',
|
||||||
|
'zfs_destroy_007_neg', 'zfs_destroy_008_pos', 'zfs_destroy_009_pos',
|
||||||
|
'zfs_destroy_010_pos', 'zfs_destroy_011_pos', 'zfs_destroy_012_pos',
|
||||||
|
'zfs_destroy_013_neg', 'zfs_destroy_014_pos', 'zfs_destroy_015_pos',
|
||||||
|
'zfs_destroy_016_pos', 'zfs_destroy_clone_livelist',
|
||||||
|
'zfs_destroy_dev_removal', 'zfs_destroy_dev_removal_condense']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_destroy']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_diff]
|
||||||
|
tests = ['zfs_diff_changes', 'zfs_diff_cliargs', 'zfs_diff_timestamp',
|
||||||
|
'zfs_diff_types', 'zfs_diff_encrypted']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_diff']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_get]
|
||||||
|
tests = ['zfs_get_001_pos', 'zfs_get_002_pos', 'zfs_get_003_pos',
|
||||||
|
'zfs_get_004_pos', 'zfs_get_005_neg', 'zfs_get_006_neg', 'zfs_get_007_neg',
|
||||||
|
'zfs_get_008_pos', 'zfs_get_009_pos', 'zfs_get_010_neg']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_get']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_inherit]
|
||||||
|
tests = ['zfs_inherit_001_neg', 'zfs_inherit_002_neg', 'zfs_inherit_003_pos',
|
||||||
|
'zfs_inherit_mountpoint']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_inherit']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_load-key]
|
||||||
|
tests = ['zfs_load-key', 'zfs_load-key_all', 'zfs_load-key_file',
|
||||||
|
'zfs_load-key_location', 'zfs_load-key_noop', 'zfs_load-key_recursive']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_load-key']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_mount]
|
||||||
|
tests = ['zfs_mount_001_pos', 'zfs_mount_002_pos', 'zfs_mount_003_pos',
|
||||||
|
'zfs_mount_004_pos', 'zfs_mount_005_pos', 'zfs_mount_007_pos',
|
||||||
|
'zfs_mount_009_neg', 'zfs_mount_010_neg', 'zfs_mount_011_neg',
|
||||||
|
'zfs_mount_012_neg', 'zfs_mount_all_001_pos', 'zfs_mount_encrypted',
|
||||||
|
'zfs_mount_remount', 'zfs_mount_all_fail', 'zfs_mount_all_mountpoints',
|
||||||
|
'zfs_mount_test_race']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_mount']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_program]
|
||||||
|
tests = ['zfs_program_json']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_program']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_promote]
|
||||||
|
tests = ['zfs_promote_001_pos', 'zfs_promote_002_pos', 'zfs_promote_003_pos',
|
||||||
|
'zfs_promote_004_pos', 'zfs_promote_005_pos', 'zfs_promote_006_neg',
|
||||||
|
'zfs_promote_007_neg', 'zfs_promote_008_pos', 'zfs_promote_encryptionroot']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_promote']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_property]
|
||||||
|
tests = ['zfs_written_property_001_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_property']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_receive]
|
||||||
|
tests = ['zfs_receive_001_pos', 'zfs_receive_002_pos', 'zfs_receive_003_pos',
|
||||||
|
'zfs_receive_004_neg', 'zfs_receive_005_neg', 'zfs_receive_006_pos',
|
||||||
|
'zfs_receive_007_neg', 'zfs_receive_008_pos', 'zfs_receive_009_neg',
|
||||||
|
'zfs_receive_010_pos', 'zfs_receive_011_pos', 'zfs_receive_012_pos',
|
||||||
|
'zfs_receive_013_pos', 'zfs_receive_014_pos', 'zfs_receive_015_pos',
|
||||||
|
'receive-o-x_props_override', 'zfs_receive_from_encrypted',
|
||||||
|
'zfs_receive_to_encrypted', 'zfs_receive_raw',
|
||||||
|
'zfs_receive_raw_incremental', 'zfs_receive_-e', 'zfs_receive_raw_-d']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_receive']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_rename]
|
||||||
|
tests = ['zfs_rename_001_pos', 'zfs_rename_002_pos', 'zfs_rename_003_pos',
|
||||||
|
'zfs_rename_004_neg', 'zfs_rename_005_neg', 'zfs_rename_006_pos',
|
||||||
|
'zfs_rename_007_pos', 'zfs_rename_008_pos', 'zfs_rename_009_neg',
|
||||||
|
'zfs_rename_010_neg', 'zfs_rename_011_pos', 'zfs_rename_012_neg',
|
||||||
|
'zfs_rename_013_pos', 'zfs_rename_014_neg', 'zfs_rename_encrypted_child',
|
||||||
|
'zfs_rename_to_encrypted', 'zfs_rename_mountpoint']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_rename']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_reservation]
|
||||||
|
tests = ['zfs_reservation_001_pos', 'zfs_reservation_002_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_reservation']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_rollback]
|
||||||
|
tests = ['zfs_rollback_001_pos', 'zfs_rollback_002_pos',
|
||||||
|
'zfs_rollback_003_neg', 'zfs_rollback_004_neg']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_rollback']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_send]
|
||||||
|
tests = ['zfs_send_001_pos', 'zfs_send_002_pos', 'zfs_send_003_pos',
|
||||||
|
'zfs_send_004_neg', 'zfs_send_005_pos', 'zfs_send_006_pos',
|
||||||
|
'zfs_send_007_pos', 'zfs_send_encrypted', 'zfs_send_raw',
|
||||||
|
'zfs_send_sparse', 'zfs_send-b']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_send']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_set]
|
||||||
|
tests = ['cache_001_pos', 'cache_002_neg', 'canmount_001_pos',
|
||||||
|
'canmount_002_pos', 'canmount_003_pos', 'canmount_004_pos',
|
||||||
|
'checksum_001_pos', 'compression_001_pos', 'mountpoint_001_pos',
|
||||||
|
'mountpoint_002_pos', 'reservation_001_neg', 'user_property_002_pos',
|
||||||
|
'share_mount_001_neg', 'snapdir_001_pos', 'onoffs_001_pos',
|
||||||
|
'user_property_001_pos', 'user_property_003_neg', 'readonly_001_pos',
|
||||||
|
'user_property_004_pos', 'version_001_neg', 'zfs_set_001_neg',
|
||||||
|
'zfs_set_002_neg', 'zfs_set_003_neg', 'property_alias_001_pos',
|
||||||
|
'mountpoint_003_pos', 'ro_props_001_pos', 'zfs_set_keylocation']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_set']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_share]
|
||||||
|
tests = ['zfs_share_001_pos', 'zfs_share_002_pos', 'zfs_share_003_pos',
|
||||||
|
'zfs_share_004_pos', 'zfs_share_005_pos', 'zfs_share_006_pos',
|
||||||
|
'zfs_share_007_neg', 'zfs_share_008_neg', 'zfs_share_009_neg',
|
||||||
|
'zfs_share_010_neg', 'zfs_share_011_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_share']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_snapshot]
|
||||||
|
tests = ['zfs_snapshot_001_neg', 'zfs_snapshot_002_neg',
|
||||||
|
'zfs_snapshot_003_neg', 'zfs_snapshot_004_neg', 'zfs_snapshot_005_neg',
|
||||||
|
'zfs_snapshot_006_pos', 'zfs_snapshot_007_neg', 'zfs_snapshot_008_neg',
|
||||||
|
'zfs_snapshot_009_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_snapshot']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_sysfs]
|
||||||
|
tests = ['zfeature_set_unsupported.ksh', 'zfs_get_unsupported',
|
||||||
|
'zfs_set_unsupported', 'zfs_sysfs_live.ksh', 'zpool_get_unsupported',
|
||||||
|
'zpool_set_unsupported']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_sysfs']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_unload-key]
|
||||||
|
tests = ['zfs_unload-key', 'zfs_unload-key_all', 'zfs_unload-key_recursive']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_unload-key']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_unmount]
|
||||||
|
tests = ['zfs_unmount_001_pos', 'zfs_unmount_002_pos', 'zfs_unmount_003_pos',
|
||||||
|
'zfs_unmount_004_pos', 'zfs_unmount_005_pos', 'zfs_unmount_006_pos',
|
||||||
|
'zfs_unmount_007_neg', 'zfs_unmount_008_neg', 'zfs_unmount_009_pos',
|
||||||
|
'zfs_unmount_all_001_pos', 'zfs_unmount_nested', 'zfs_unmount_unload_keys']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_unmount']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_unshare]
|
||||||
|
tests = ['zfs_unshare_001_pos', 'zfs_unshare_002_pos', 'zfs_unshare_003_pos',
|
||||||
|
'zfs_unshare_004_neg', 'zfs_unshare_005_neg', 'zfs_unshare_006_pos',
|
||||||
|
'zfs_unshare_007_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_unshare']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zfs_upgrade]
|
||||||
|
tests = ['zfs_upgrade_001_pos', 'zfs_upgrade_002_pos', 'zfs_upgrade_003_pos',
|
||||||
|
'zfs_upgrade_004_pos', 'zfs_upgrade_005_pos', 'zfs_upgrade_006_neg',
|
||||||
|
'zfs_upgrade_007_neg']
|
||||||
|
tags = ['functional', 'cli_root', 'zfs_upgrade']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool]
|
||||||
|
tests = ['zpool_001_neg', 'zpool_002_pos', 'zpool_003_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_add]
|
||||||
|
tests = ['zpool_add_001_pos', 'zpool_add_002_pos', 'zpool_add_003_pos',
|
||||||
|
'zpool_add_004_pos', 'zpool_add_005_pos', 'zpool_add_006_pos',
|
||||||
|
'zpool_add_007_neg', 'zpool_add_008_neg', 'zpool_add_009_neg',
|
||||||
|
'zpool_add_010_pos',
|
||||||
|
'add-o_ashift', 'add_prop_ashift', 'add_nested_replacing_spare']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_add']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_attach]
|
||||||
|
tests = ['zpool_attach_001_neg', 'attach-o_ashift']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_attach']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_clear]
|
||||||
|
tests = ['zpool_clear_001_pos', 'zpool_clear_002_neg', 'zpool_clear_003_neg',
|
||||||
|
'zpool_clear_readonly']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_clear']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_create]
|
||||||
|
tests = ['zpool_create_001_pos', 'zpool_create_002_pos',
|
||||||
|
'zpool_create_003_pos', 'zpool_create_004_pos', 'zpool_create_005_pos',
|
||||||
|
'zpool_create_006_pos', 'zpool_create_007_neg', 'zpool_create_008_pos',
|
||||||
|
'zpool_create_009_neg', 'zpool_create_010_neg', 'zpool_create_011_neg',
|
||||||
|
'zpool_create_012_neg', 'zpool_create_014_neg',
|
||||||
|
'zpool_create_015_neg', 'zpool_create_016_pos', 'zpool_create_017_neg',
|
||||||
|
'zpool_create_018_pos', 'zpool_create_019_pos', 'zpool_create_020_pos',
|
||||||
|
'zpool_create_021_pos', 'zpool_create_022_pos', 'zpool_create_023_neg',
|
||||||
|
'zpool_create_024_pos',
|
||||||
|
'zpool_create_encrypted', 'zpool_create_crypt_combos',
|
||||||
|
'zpool_create_features_001_pos', 'zpool_create_features_002_pos',
|
||||||
|
'zpool_create_features_003_pos', 'zpool_create_features_004_neg',
|
||||||
|
'zpool_create_features_005_pos',
|
||||||
|
'create-o_ashift', 'zpool_create_tempname']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_create']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_destroy]
|
||||||
|
tests = ['zpool_destroy_001_pos', 'zpool_destroy_002_pos',
|
||||||
|
'zpool_destroy_003_neg']
|
||||||
|
pre =
|
||||||
|
post =
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_destroy']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_detach]
|
||||||
|
tests = ['zpool_detach_001_neg']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_detach']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_expand]
|
||||||
|
tests = ['zpool_expand_001_pos', 'zpool_expand_002_pos',
|
||||||
|
'zpool_expand_003_neg', 'zpool_expand_004_pos', 'zpool_expand_005_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_expand']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_export]
|
||||||
|
tests = ['zpool_export_001_pos', 'zpool_export_002_pos',
|
||||||
|
'zpool_export_003_neg', 'zpool_export_004_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_export']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_get]
|
||||||
|
tests = ['zpool_get_001_pos', 'zpool_get_002_pos', 'zpool_get_003_pos',
|
||||||
|
'zpool_get_004_neg', 'zpool_get_005_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_get']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_history]
|
||||||
|
tests = ['zpool_history_001_neg', 'zpool_history_002_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_history']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_import]
|
||||||
|
tests = ['zpool_import_001_pos', 'zpool_import_002_pos',
|
||||||
|
'zpool_import_003_pos', 'zpool_import_004_pos', 'zpool_import_005_pos',
|
||||||
|
'zpool_import_006_pos', 'zpool_import_007_pos', 'zpool_import_008_pos',
|
||||||
|
'zpool_import_009_neg', 'zpool_import_010_pos', 'zpool_import_011_neg',
|
||||||
|
'zpool_import_012_pos', 'zpool_import_013_neg', 'zpool_import_014_pos',
|
||||||
|
'zpool_import_015_pos',
|
||||||
|
'zpool_import_features_001_pos', 'zpool_import_features_002_neg',
|
||||||
|
'zpool_import_features_003_pos', 'zpool_import_missing_001_pos',
|
||||||
|
'zpool_import_missing_002_pos', 'zpool_import_missing_003_pos',
|
||||||
|
'zpool_import_rename_001_pos', 'zpool_import_all_001_pos',
|
||||||
|
'zpool_import_encrypted', 'zpool_import_encrypted_load',
|
||||||
|
'zpool_import_errata3', 'zpool_import_errata4',
|
||||||
|
'import_cachefile_device_added',
|
||||||
|
'import_cachefile_device_removed',
|
||||||
|
'import_cachefile_device_replaced',
|
||||||
|
'import_cachefile_mirror_attached',
|
||||||
|
'import_cachefile_mirror_detached',
|
||||||
|
'import_cachefile_shared_device',
|
||||||
|
'import_devices_missing',
|
||||||
|
'import_paths_changed',
|
||||||
|
'import_rewind_config_changed',
|
||||||
|
'import_rewind_device_replaced']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_import']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_labelclear]
|
||||||
|
tests = ['zpool_labelclear_active', 'zpool_labelclear_exported',
|
||||||
|
'zpool_labelclear_removed', 'zpool_labelclear_valid']
|
||||||
|
pre =
|
||||||
|
post =
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_labelclear']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_initialize]
|
||||||
|
tests = ['zpool_initialize_attach_detach_add_remove',
|
||||||
|
'zpool_initialize_import_export',
|
||||||
|
'zpool_initialize_offline_export_import_online',
|
||||||
|
'zpool_initialize_online_offline',
|
||||||
|
'zpool_initialize_split',
|
||||||
|
'zpool_initialize_start_and_cancel_neg',
|
||||||
|
'zpool_initialize_start_and_cancel_pos',
|
||||||
|
'zpool_initialize_suspend_resume',
|
||||||
|
'zpool_initialize_unsupported_vdevs',
|
||||||
|
'zpool_initialize_verify_checksums',
|
||||||
|
'zpool_initialize_verify_initialized']
|
||||||
|
pre =
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_initialize']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_offline]
|
||||||
|
tests = ['zpool_offline_001_pos', 'zpool_offline_002_neg',
|
||||||
|
'zpool_offline_003_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_offline']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_online]
|
||||||
|
tests = ['zpool_online_001_pos', 'zpool_online_002_neg']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_online']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_remove]
|
||||||
|
tests = ['zpool_remove_001_neg', 'zpool_remove_002_pos',
|
||||||
|
'zpool_remove_003_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_remove']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_reopen]
|
||||||
|
tests = ['zpool_reopen_001_pos', 'zpool_reopen_002_pos',
|
||||||
|
'zpool_reopen_003_pos', 'zpool_reopen_004_pos', 'zpool_reopen_005_pos',
|
||||||
|
'zpool_reopen_006_neg', 'zpool_reopen_007_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_reopen']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_replace]
|
||||||
|
tests = ['zpool_replace_001_neg', 'replace-o_ashift', 'replace_prop_ashift']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_replace']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_resilver]
|
||||||
|
tests = ['zpool_resilver_bad_args', 'zpool_resilver_restart']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_resilver']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_scrub]
|
||||||
|
tests = ['zpool_scrub_001_neg', 'zpool_scrub_002_pos', 'zpool_scrub_003_pos',
|
||||||
|
'zpool_scrub_004_pos', 'zpool_scrub_005_pos',
|
||||||
|
'zpool_scrub_encrypted_unloaded', 'zpool_scrub_print_repairing',
|
||||||
|
'zpool_scrub_offline_device', 'zpool_scrub_multiple_copies']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_scrub']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_set]
|
||||||
|
tests = ['zpool_set_001_pos', 'zpool_set_002_neg', 'zpool_set_003_neg',
|
||||||
|
'zpool_set_ashift', 'zpool_set_features']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_set']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_split]
|
||||||
|
tests = ['zpool_split_cliargs', 'zpool_split_devices',
|
||||||
|
'zpool_split_encryption', 'zpool_split_props', 'zpool_split_vdevs',
|
||||||
|
'zpool_split_resilver', 'zpool_split_wholedisk']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_split']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_status]
|
||||||
|
tests = ['zpool_status_001_pos', 'zpool_status_002_pos']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_status']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_sync]
|
||||||
|
tests = ['zpool_sync_001_pos', 'zpool_sync_002_neg']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_sync']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_trim]
|
||||||
|
tests = ['zpool_trim_attach_detach_add_remove',
|
||||||
|
'zpool_trim_import_export', 'zpool_trim_multiple', 'zpool_trim_neg',
|
||||||
|
'zpool_trim_offline_export_import_online', 'zpool_trim_online_offline',
|
||||||
|
'zpool_trim_partial', 'zpool_trim_rate', 'zpool_trim_rate_neg',
|
||||||
|
'zpool_trim_secure', 'zpool_trim_split', 'zpool_trim_start_and_cancel_neg',
|
||||||
|
'zpool_trim_start_and_cancel_pos', 'zpool_trim_suspend_resume',
|
||||||
|
'zpool_trim_unsupported_vdevs', 'zpool_trim_verify_checksums',
|
||||||
|
'zpool_trim_verify_trimmed']
|
||||||
|
tags = ['functional', 'zpool_trim']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_upgrade]
|
||||||
|
tests = ['zpool_upgrade_001_pos', 'zpool_upgrade_002_pos',
|
||||||
|
'zpool_upgrade_003_pos', 'zpool_upgrade_004_pos',
|
||||||
|
'zpool_upgrade_005_neg', 'zpool_upgrade_006_neg',
|
||||||
|
'zpool_upgrade_007_pos', 'zpool_upgrade_008_pos',
|
||||||
|
'zpool_upgrade_009_neg']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_upgrade']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_wait]
|
||||||
|
tests = ['zpool_wait_discard', 'zpool_wait_freeing',
|
||||||
|
'zpool_wait_initialize_basic', 'zpool_wait_initialize_cancel',
|
||||||
|
'zpool_wait_initialize_flag', 'zpool_wait_multiple',
|
||||||
|
'zpool_wait_no_activity', 'zpool_wait_remove', 'zpool_wait_remove_cancel',
|
||||||
|
'zpool_wait_usage']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_wait']
|
||||||
|
|
||||||
|
[tests/functional/cli_root/zpool_wait/scan]
|
||||||
|
tests = ['zpool_wait_replace_cancel', 'zpool_wait_resilver', 'zpool_wait_scrub_cancel',
|
||||||
|
'zpool_wait_replace', 'zpool_wait_scrub_basic', 'zpool_wait_scrub_flag']
|
||||||
|
tags = ['functional', 'cli_root', 'zpool_wait']
|
||||||
|
|
||||||
|
[tests/functional/cli_user/misc]
|
||||||
|
tests = ['zdb_001_neg', 'zfs_001_neg', 'zfs_allow_001_neg',
|
||||||
|
'zfs_clone_001_neg', 'zfs_create_001_neg', 'zfs_destroy_001_neg',
|
||||||
|
'zfs_get_001_neg', 'zfs_inherit_001_neg', 'zfs_mount_001_neg',
|
||||||
|
'zfs_promote_001_neg', 'zfs_receive_001_neg', 'zfs_rename_001_neg',
|
||||||
|
'zfs_rollback_001_neg', 'zfs_send_001_neg', 'zfs_set_001_neg',
|
||||||
|
'zfs_share_001_neg', 'zfs_snapshot_001_neg', 'zfs_unallow_001_neg',
|
||||||
|
'zfs_unmount_001_neg', 'zfs_unshare_001_neg', 'zfs_upgrade_001_neg',
|
||||||
|
'zpool_001_neg', 'zpool_add_001_neg', 'zpool_attach_001_neg',
|
||||||
|
'zpool_clear_001_neg', 'zpool_create_001_neg', 'zpool_destroy_001_neg',
|
||||||
|
'zpool_detach_001_neg', 'zpool_export_001_neg', 'zpool_get_001_neg',
|
||||||
|
'zpool_history_001_neg', 'zpool_import_001_neg', 'zpool_import_002_neg',
|
||||||
|
'zpool_offline_001_neg', 'zpool_online_001_neg', 'zpool_remove_001_neg',
|
||||||
|
'zpool_replace_001_neg', 'zpool_scrub_001_neg', 'zpool_set_001_neg',
|
||||||
|
'zpool_status_001_neg', 'zpool_upgrade_001_neg', 'arcstat_001_pos',
|
||||||
|
'arc_summary_001_pos', 'arc_summary_002_neg', 'zpool_wait_privilege']
|
||||||
|
user =
|
||||||
|
tags = ['functional', 'cli_user', 'misc']
|
||||||
|
|
||||||
|
[tests/functional/cli_user/zfs_list]
|
||||||
|
tests = ['zfs_list_001_pos', 'zfs_list_002_pos', 'zfs_list_003_pos',
|
||||||
|
'zfs_list_004_neg', 'zfs_list_007_pos', 'zfs_list_008_neg']
|
||||||
|
user =
|
||||||
|
tags = ['functional', 'cli_user', 'zfs_list']
|
||||||
|
|
||||||
|
[tests/functional/cli_user/zpool_iostat]
|
||||||
|
tests = ['zpool_iostat_001_neg', 'zpool_iostat_002_pos',
|
||||||
|
'zpool_iostat_003_neg', 'zpool_iostat_004_pos',
|
||||||
|
'zpool_iostat_005_pos', 'zpool_iostat_-c_disable',
|
||||||
|
'zpool_iostat_-c_homedir', 'zpool_iostat_-c_searchpath']
|
||||||
|
user =
|
||||||
|
tags = ['functional', 'cli_user', 'zpool_iostat']
|
||||||
|
|
||||||
|
[tests/functional/cli_user/zpool_list]
|
||||||
|
tests = ['zpool_list_001_pos', 'zpool_list_002_neg']
|
||||||
|
user =
|
||||||
|
tags = ['functional', 'cli_user', 'zpool_list']
|
||||||
|
|
||||||
|
[tests/functional/cli_user/zpool_status]
|
||||||
|
tests = ['zpool_status_003_pos', 'zpool_status_-c_disable',
|
||||||
|
'zpool_status_-c_homedir', 'zpool_status_-c_searchpath']
|
||||||
|
user =
|
||||||
|
tags = ['functional', 'cli_user', 'zpool_status']
|
||||||
|
|
||||||
|
[tests/functional/compression]
|
||||||
|
tests = ['compress_001_pos', 'compress_002_pos', 'compress_003_pos']
|
||||||
|
tags = ['functional', 'compression']
|
||||||
|
|
||||||
|
[tests/functional/cp_files]
|
||||||
|
tests = ['cp_files_001_pos']
|
||||||
|
tags = ['functional', 'cp_files']
|
||||||
|
|
||||||
|
[tests/functional/ctime]
|
||||||
|
tests = ['ctime_001_pos' ]
|
||||||
|
tags = ['functional', 'ctime']
|
||||||
|
|
||||||
|
[tests/functional/delegate]
|
||||||
|
tests = ['zfs_allow_001_pos', 'zfs_allow_002_pos', 'zfs_allow_003_pos',
|
||||||
|
'zfs_allow_004_pos', 'zfs_allow_005_pos', 'zfs_allow_006_pos',
|
||||||
|
'zfs_allow_007_pos', 'zfs_allow_008_pos', 'zfs_allow_009_neg',
|
||||||
|
'zfs_allow_010_pos', 'zfs_allow_011_neg', 'zfs_allow_012_neg',
|
||||||
|
'zfs_unallow_001_pos', 'zfs_unallow_002_pos', 'zfs_unallow_003_pos',
|
||||||
|
'zfs_unallow_004_pos', 'zfs_unallow_005_pos', 'zfs_unallow_006_pos',
|
||||||
|
'zfs_unallow_007_neg', 'zfs_unallow_008_neg']
|
||||||
|
tags = ['functional', 'delegate']
|
||||||
|
|
||||||
|
[tests/functional/exec]
|
||||||
|
tests = ['exec_001_pos', 'exec_002_neg']
|
||||||
|
tags = ['functional', 'exec']
|
||||||
|
|
||||||
|
[tests/functional/fault]
|
||||||
|
tests = ['auto_offline_001_pos', 'auto_online_001_pos', 'auto_replace_001_pos',
|
||||||
|
'auto_spare_001_pos', 'auto_spare_002_pos', 'auto_spare_multiple',
|
||||||
|
'auto_spare_shared', 'decrypt_fault', 'decompress_fault']
|
||||||
|
tags = ['functional', 'fault']
|
||||||
|
|
||||||
|
[tests/functional/features/async_destroy]
|
||||||
|
tests = ['async_destroy_001_pos']
|
||||||
|
tags = ['functional', 'features', 'async_destroy']
|
||||||
|
|
||||||
|
[tests/functional/features/large_dnode]
|
||||||
|
tests = ['large_dnode_001_pos', 'large_dnode_003_pos', 'large_dnode_004_neg',
|
||||||
|
'large_dnode_005_pos', 'large_dnode_007_neg', 'large_dnode_009_pos']
|
||||||
|
tags = ['functional', 'features', 'large_dnode']
|
||||||
|
|
||||||
|
[tests/functional/grow]
|
||||||
|
pre =
|
||||||
|
post =
|
||||||
|
tests = ['grow_pool_001_pos', 'grow_replicas_001_pos']
|
||||||
|
tags = ['functional', 'grow']
|
||||||
|
|
||||||
|
[tests/functional/history]
|
||||||
|
tests = ['history_001_pos', 'history_002_pos', 'history_003_pos',
|
||||||
|
'history_004_pos', 'history_005_neg', 'history_006_neg',
|
||||||
|
'history_007_pos', 'history_008_pos', 'history_009_pos',
|
||||||
|
'history_010_pos']
|
||||||
|
tags = ['functional', 'history']
|
||||||
|
|
||||||
|
[tests/functional/hkdf]
|
||||||
|
tests = ['run_hkdf_test']
|
||||||
|
tags = ['functional', 'hkdf']
|
||||||
|
|
||||||
|
[tests/functional/inheritance]
|
||||||
|
tests = ['inherit_001_pos']
|
||||||
|
pre =
|
||||||
|
tags = ['functional', 'inheritance']
|
||||||
|
|
||||||
|
[tests/functional/io]
|
||||||
|
tests = ['sync', 'psync', 'posixaio', 'mmap']
|
||||||
|
tags = ['functional', 'io']
|
||||||
|
|
||||||
|
[tests/functional/inuse]
|
||||||
|
tests = ['inuse_001_pos', 'inuse_003_pos', 'inuse_004_pos',
|
||||||
|
'inuse_005_pos', 'inuse_006_pos', 'inuse_007_pos', 'inuse_008_pos',
|
||||||
|
'inuse_009_pos']
|
||||||
|
post =
|
||||||
|
tags = ['functional', 'inuse']
|
||||||
|
|
||||||
|
[tests/functional/large_files]
|
||||||
|
tests = ['large_files_001_pos', 'large_files_002_pos']
|
||||||
|
tags = ['functional', 'large_files']
|
||||||
|
|
||||||
|
[tests/functional/largest_pool]
|
||||||
|
tests = ['largest_pool_001_pos']
|
||||||
|
pre =
|
||||||
|
post =
|
||||||
|
tags = ['functional', 'largest_pool']
|
||||||
|
|
||||||
|
[tests/functional/limits]
|
||||||
|
tests = ['filesystem_count', 'filesystem_limit', 'snapshot_count',
|
||||||
|
'snapshot_limit']
|
||||||
|
tags = ['functional', 'limits']
|
||||||
|
|
||||||
|
[tests/functional/link_count]
|
||||||
|
tests = ['link_count_001', 'link_count_root_inode.ksh']
|
||||||
|
tags = ['functional', 'link_count']
|
||||||
|
|
||||||
|
[tests/functional/migration]
|
||||||
|
tests = ['migration_001_pos', 'migration_002_pos', 'migration_003_pos',
|
||||||
|
'migration_004_pos', 'migration_005_pos', 'migration_006_pos',
|
||||||
|
'migration_007_pos', 'migration_008_pos', 'migration_009_pos',
|
||||||
|
'migration_010_pos', 'migration_011_pos', 'migration_012_pos']
|
||||||
|
tags = ['functional', 'migration']
|
||||||
|
|
||||||
|
[tests/functional/mmap]
|
||||||
|
tests = ['mmap_write_001_pos', 'mmap_read_001_pos']
|
||||||
|
tags = ['functional', 'mmap']
|
||||||
|
|
||||||
|
[tests/functional/mmp]
|
||||||
|
tests = ['mmp_on_thread', 'mmp_on_uberblocks', 'mmp_on_off', 'mmp_interval',
|
||||||
|
'mmp_active_import', 'mmp_inactive_import', 'mmp_exported_import',
|
||||||
|
'mmp_write_uberblocks', 'mmp_reset_interval', 'multihost_history',
|
||||||
|
'mmp_on_zdb', 'mmp_write_distribution', 'mmp_hostid']
|
||||||
|
tags = ['functional', 'mmp']
|
||||||
|
|
||||||
|
[tests/functional/mount]
|
||||||
|
tests = ['umount_001', 'umount_unlinked_drain', 'umountall_001']
|
||||||
|
tags = ['functional', 'mount']
|
||||||
|
|
||||||
|
[tests/functional/mv_files]
|
||||||
|
tests = ['mv_files_001_pos', 'mv_files_002_pos', 'random_creation']
|
||||||
|
tags = ['functional', 'mv_files']
|
||||||
|
|
||||||
|
[tests/functional/nestedfs]
|
||||||
|
tests = ['nestedfs_001_pos']
|
||||||
|
tags = ['functional', 'nestedfs']
|
||||||
|
|
||||||
|
[tests/functional/no_space]
|
||||||
|
tests = ['enospc_001_pos', 'enospc_002_pos', 'enospc_003_pos',
|
||||||
|
'enospc_df']
|
||||||
|
tags = ['functional', 'no_space']
|
||||||
|
|
||||||
|
[tests/functional/nopwrite]
|
||||||
|
tests = ['nopwrite_copies', 'nopwrite_mtime', 'nopwrite_negative',
|
||||||
|
'nopwrite_promoted_clone', 'nopwrite_recsize', 'nopwrite_sync',
|
||||||
|
'nopwrite_varying_compression', 'nopwrite_volume']
|
||||||
|
tags = ['functional', 'nopwrite']
|
||||||
|
|
||||||
|
[tests/functional/online_offline]
|
||||||
|
tests = ['online_offline_001_pos', 'online_offline_002_neg',
|
||||||
|
'online_offline_003_neg']
|
||||||
|
tags = ['functional', 'online_offline']
|
||||||
|
|
||||||
|
[tests/functional/pool_checkpoint]
|
||||||
|
tests = ['checkpoint_after_rewind', 'checkpoint_big_rewind',
|
||||||
|
'checkpoint_capacity', 'checkpoint_conf_change', 'checkpoint_discard',
|
||||||
|
'checkpoint_discard_busy', 'checkpoint_discard_many',
|
||||||
|
'checkpoint_indirect', 'checkpoint_invalid', 'checkpoint_lun_expsz',
|
||||||
|
'checkpoint_open', 'checkpoint_removal', 'checkpoint_rewind',
|
||||||
|
'checkpoint_ro_rewind', 'checkpoint_sm_scale', 'checkpoint_twice',
|
||||||
|
'checkpoint_vdev_add', 'checkpoint_zdb', 'checkpoint_zhack_feat']
|
||||||
|
tags = ['functional', 'pool_checkpoint']
|
||||||
|
timeout = 1800
|
||||||
|
|
||||||
|
[tests/functional/pool_names]
|
||||||
|
tests = ['pool_names_001_pos', 'pool_names_002_neg']
|
||||||
|
pre =
|
||||||
|
post =
|
||||||
|
tags = ['functional', 'pool_names']
|
||||||
|
|
||||||
|
[tests/functional/poolversion]
|
||||||
|
tests = ['poolversion_001_pos', 'poolversion_002_pos']
|
||||||
|
tags = ['functional', 'poolversion']
|
||||||
|
|
||||||
|
[tests/functional/privilege]
|
||||||
|
tests = ['privilege_001_pos', 'privilege_002_pos']
|
||||||
|
tags = ['functional', 'privilege']
|
||||||
|
|
||||||
|
[tests/functional/procfs]
|
||||||
|
tests = ['procfs_list_basic', 'procfs_list_concurrent_readers',
|
||||||
|
'procfs_list_stale_read', 'pool_state']
|
||||||
|
tags = ['functional', 'procfs']
|
||||||
|
|
||||||
|
[tests/functional/pyzfs]
|
||||||
|
tests = ['pyzfs_unittest']
|
||||||
|
pre =
|
||||||
|
post =
|
||||||
|
tags = ['functional', 'pyzfs']
|
||||||
|
|
||||||
|
[tests/functional/quota]
|
||||||
|
tests = ['quota_001_pos', 'quota_002_pos', 'quota_003_pos',
|
||||||
|
'quota_004_pos', 'quota_005_pos', 'quota_006_neg']
|
||||||
|
tags = ['functional', 'quota']
|
||||||
|
|
||||||
|
[tests/functional/redacted_send]
|
||||||
|
tests = ['redacted_compressed', 'redacted_contents', 'redacted_deleted',
|
||||||
|
'redacted_disabled_feature', 'redacted_embedded', 'redacted_holes',
|
||||||
|
'redacted_incrementals', 'redacted_largeblocks', 'redacted_many_clones',
|
||||||
|
'redacted_mixed_recsize', 'redacted_mounts', 'redacted_negative',
|
||||||
|
'redacted_origin', 'redacted_props', 'redacted_resume', 'redacted_size',
|
||||||
|
'redacted_volume']
|
||||||
|
tags = ['functional', 'redacted_send']
|
||||||
|
|
||||||
|
[tests/functional/raidz]
|
||||||
|
tests = ['raidz_001_neg', 'raidz_002_pos']
|
||||||
|
tags = ['functional', 'raidz']
|
||||||
|
|
||||||
|
[tests/functional/redundancy]
|
||||||
|
tests = ['redundancy_001_pos', 'redundancy_002_pos', 'redundancy_003_pos',
|
||||||
|
'redundancy_004_neg']
|
||||||
|
tags = ['functional', 'redundancy']
|
||||||
|
|
||||||
|
[tests/functional/refquota]
|
||||||
|
tests = ['refquota_001_pos', 'refquota_002_pos', 'refquota_003_pos',
|
||||||
|
'refquota_004_pos', 'refquota_005_pos', 'refquota_006_neg',
|
||||||
|
'refquota_007_neg', 'refquota_008_neg']
|
||||||
|
tags = ['functional', 'refquota']
|
||||||
|
|
||||||
|
[tests/functional/refreserv]
|
||||||
|
tests = ['refreserv_001_pos', 'refreserv_002_pos', 'refreserv_003_pos',
|
||||||
|
'refreserv_004_pos', 'refreserv_005_pos', 'refreserv_multi_raidz',
|
||||||
|
'refreserv_raidz']
|
||||||
|
tags = ['functional', 'refreserv']
|
||||||
|
|
||||||
|
[tests/functional/removal]
|
||||||
|
pre =
|
||||||
|
tests = ['removal_all_vdev', 'removal_cancel', 'removal_check_space',
|
||||||
|
'removal_condense_export', 'removal_multiple_indirection',
|
||||||
|
'removal_nopwrite', 'removal_remap_deadlists',
|
||||||
|
'removal_resume_export', 'removal_sanity', 'removal_with_add',
|
||||||
|
'removal_with_create_fs', 'removal_with_dedup',
|
||||||
|
'removal_with_errors', 'removal_with_export',
|
||||||
|
'removal_with_ganging', 'removal_with_faulted',
|
||||||
|
'removal_with_remove', 'removal_with_scrub', 'removal_with_send',
|
||||||
|
'removal_with_send_recv', 'removal_with_snapshot',
|
||||||
|
'removal_with_write', 'removal_with_zdb', 'remove_expanded',
|
||||||
|
'remove_mirror', 'remove_mirror_sanity', 'remove_raidz',
|
||||||
|
'remove_indirect']
|
||||||
|
tags = ['functional', 'removal']
|
||||||
|
|
||||||
|
[tests/functional/rename_dirs]
|
||||||
|
tests = ['rename_dirs_001_pos']
|
||||||
|
tags = ['functional', 'rename_dirs']
|
||||||
|
|
||||||
|
[tests/functional/replacement]
|
||||||
|
tests = ['replacement_001_pos', 'replacement_002_pos', 'replacement_003_pos']
|
||||||
|
tags = ['functional', 'replacement']
|
||||||
|
|
||||||
|
[tests/functional/reservation]
|
||||||
|
tests = ['reservation_001_pos', 'reservation_002_pos', 'reservation_003_pos',
|
||||||
|
'reservation_004_pos', 'reservation_005_pos', 'reservation_006_pos',
|
||||||
|
'reservation_007_pos', 'reservation_008_pos', 'reservation_009_pos',
|
||||||
|
'reservation_010_pos', 'reservation_011_pos', 'reservation_012_pos',
|
||||||
|
'reservation_013_pos', 'reservation_014_pos', 'reservation_015_pos',
|
||||||
|
'reservation_016_pos', 'reservation_017_pos', 'reservation_018_pos',
|
||||||
|
'reservation_019_pos', 'reservation_020_pos', 'reservation_021_neg',
|
||||||
|
'reservation_022_pos']
|
||||||
|
tags = ['functional', 'reservation']
|
||||||
|
|
||||||
|
[tests/functional/rootpool]
|
||||||
|
tests = ['rootpool_002_neg', 'rootpool_003_neg', 'rootpool_007_pos']
|
||||||
|
tags = ['functional', 'rootpool']
|
||||||
|
|
||||||
|
[tests/functional/rsend]
|
||||||
|
tests = ['rsend_001_pos', 'rsend_002_pos', 'rsend_003_pos', 'rsend_004_pos',
|
||||||
|
'rsend_005_pos', 'rsend_006_pos', 'rsend_007_pos', 'rsend_008_pos',
|
||||||
|
'rsend_009_pos', 'rsend_010_pos', 'rsend_011_pos', 'rsend_012_pos',
|
||||||
|
'rsend_013_pos', 'rsend_014_pos',
|
||||||
|
'rsend_019_pos', 'rsend_020_pos',
|
||||||
|
'rsend_021_pos', 'rsend_022_pos', 'rsend_024_pos',
|
||||||
|
'send-c_verify_ratio', 'send-c_verify_contents', 'send-c_props',
|
||||||
|
'send-c_incremental', 'send-c_volume', 'send-c_zstreamdump',
|
||||||
|
'send-c_lz4_disabled', 'send-c_recv_lz4_disabled',
|
||||||
|
'send-c_mixed_compression', 'send-c_stream_size_estimate', 'send-cD',
|
||||||
|
'send-c_embedded_blocks', 'send-c_resume', 'send-cpL_varied_recsize',
|
||||||
|
'send-c_recv_dedup', 'send_encrypted_hierarchy',
|
||||||
|
'send_encrypted_props', 'send_encrypted_truncated_files',
|
||||||
|
'send_freeobjects', 'send_realloc_files',
|
||||||
|
'send_realloc_encrypted_files', 'send_spill_block', 'send_holds',
|
||||||
|
'send_hole_birth', 'send_mixed_raw', 'send-wDR_encrypted_zvol']
|
||||||
|
tags = ['functional', 'rsend']
|
||||||
|
|
||||||
|
[tests/functional/scrub_mirror]
|
||||||
|
tests = ['scrub_mirror_001_pos', 'scrub_mirror_002_pos',
|
||||||
|
'scrub_mirror_003_pos', 'scrub_mirror_004_pos']
|
||||||
|
tags = ['functional', 'scrub_mirror']
|
||||||
|
|
||||||
|
[tests/functional/slog]
|
||||||
|
tests = ['slog_001_pos', 'slog_002_pos', 'slog_003_pos', 'slog_004_pos',
|
||||||
|
'slog_005_pos', 'slog_006_pos', 'slog_007_pos', 'slog_008_neg',
|
||||||
|
'slog_009_neg', 'slog_010_neg', 'slog_011_neg', 'slog_012_neg',
|
||||||
|
'slog_013_pos', 'slog_014_pos', 'slog_015_neg', 'slog_replay_fs_001',
|
||||||
|
'slog_replay_fs_002', 'slog_replay_volume']
|
||||||
|
tags = ['functional', 'slog']
|
||||||
|
|
||||||
|
[tests/functional/snapshot]
|
||||||
|
tests = ['clone_001_pos', 'rollback_001_pos', 'rollback_002_pos',
|
||||||
|
'rollback_003_pos', 'snapshot_001_pos', 'snapshot_002_pos',
|
||||||
|
'snapshot_003_pos', 'snapshot_004_pos', 'snapshot_005_pos',
|
||||||
|
'snapshot_006_pos', 'snapshot_007_pos', 'snapshot_008_pos',
|
||||||
|
'snapshot_009_pos', 'snapshot_010_pos', 'snapshot_011_pos',
|
||||||
|
'snapshot_012_pos', 'snapshot_013_pos', 'snapshot_014_pos',
|
||||||
|
'snapshot_017_pos']
|
||||||
|
tags = ['functional', 'snapshot']
|
||||||
|
|
||||||
|
[tests/functional/snapused]
|
||||||
|
tests = ['snapused_001_pos', 'snapused_002_pos', 'snapused_003_pos',
|
||||||
|
'snapused_004_pos', 'snapused_005_pos']
|
||||||
|
tags = ['functional', 'snapused']
|
||||||
|
|
||||||
|
[tests/functional/sparse]
|
||||||
|
tests = ['sparse_001_pos']
|
||||||
|
tags = ['functional', 'sparse']
|
||||||
|
|
||||||
|
[tests/functional/suid]
|
||||||
|
tests = ['suid_write_to_suid', 'suid_write_to_sgid', 'suid_write_to_suid_sgid',
|
||||||
|
'suid_write_to_none']
|
||||||
|
tags = ['functional', 'suid']
|
||||||
|
|
||||||
|
[tests/functional/threadsappend]
|
||||||
|
tests = ['threadsappend_001_pos']
|
||||||
|
tags = ['functional', 'threadsappend']
|
||||||
|
|
||||||
|
[tests/functional/tmpfile]
|
||||||
|
tests = ['tmpfile_001_pos', 'tmpfile_002_pos', 'tmpfile_003_pos']
|
||||||
|
tags = ['functional', 'tmpfile']
|
||||||
|
|
||||||
|
[tests/functional/trim]
|
||||||
|
tests = ['autotrim_integrity', 'autotrim_config', 'autotrim_trim_integrity',
|
||||||
|
'trim_integrity', 'trim_config']
|
||||||
|
tags = ['functional', 'trim']
|
||||||
|
|
||||||
|
[tests/functional/truncate]
|
||||||
|
tests = ['truncate_001_pos', 'truncate_002_pos', 'truncate_timestamps']
|
||||||
|
tags = ['functional', 'truncate']
|
||||||
|
|
||||||
|
[tests/functional/upgrade]
|
||||||
|
tests = ['upgrade_userobj_001_pos', 'upgrade_readonly_pool']
|
||||||
|
tags = ['functional', 'upgrade']
|
||||||
|
|
||||||
|
[tests/functional/user_namespace]
|
||||||
|
tests = ['user_namespace_001']
|
||||||
|
tags = ['functional', 'user_namespace']
|
||||||
|
|
||||||
|
[tests/functional/userquota]
|
||||||
|
tests = [
|
||||||
|
'userquota_001_pos', 'userquota_002_pos', 'userquota_003_pos',
|
||||||
|
'userquota_004_pos', 'userquota_005_neg', 'userquota_006_pos',
|
||||||
|
'userquota_007_pos', 'userquota_008_pos', 'userquota_009_pos',
|
||||||
|
'userquota_010_pos', 'userquota_011_pos', 'userquota_012_neg',
|
||||||
|
'userspace_001_pos', 'userspace_002_pos']
|
||||||
|
tags = ['functional', 'userquota']
|
||||||
|
|
||||||
|
[tests/functional/vdev_zaps]
|
||||||
|
tests = ['vdev_zaps_001_pos', 'vdev_zaps_002_pos', 'vdev_zaps_003_pos',
|
||||||
|
'vdev_zaps_004_pos', 'vdev_zaps_005_pos', 'vdev_zaps_006_pos',
|
||||||
|
'vdev_zaps_007_pos']
|
||||||
|
tags = ['functional', 'vdev_zaps']
|
||||||
|
|
||||||
|
[tests/functional/write_dirs]
|
||||||
|
tests = ['write_dirs_001_pos', 'write_dirs_002_pos']
|
||||||
|
tags = ['functional', 'write_dirs']
|
||||||
|
|
||||||
|
[tests/functional/zvol/zvol_ENOSPC]
|
||||||
|
tests = ['zvol_ENOSPC_001_pos']
|
||||||
|
tags = ['functional', 'zvol', 'zvol_ENOSPC']
|
||||||
|
|
||||||
|
[tests/functional/zvol/zvol_cli]
|
||||||
|
tests = ['zvol_cli_001_pos', 'zvol_cli_002_pos', 'zvol_cli_003_neg']
|
||||||
|
tags = ['functional', 'zvol', 'zvol_cli']
|
||||||
|
|
||||||
|
[tests/functional/zvol/zvol_misc]
|
||||||
|
tests = ['zvol_misc_001_neg', 'zvol_misc_002_pos', 'zvol_misc_003_neg',
|
||||||
|
'zvol_misc_004_pos', 'zvol_misc_005_neg', 'zvol_misc_006_pos',
|
||||||
|
'zvol_misc_hierarchy', 'zvol_misc_rename_inuse', 'zvol_misc_snapdev',
|
||||||
|
'zvol_misc_volmode', 'zvol_misc_zil']
|
||||||
|
tags = ['functional', 'zvol', 'zvol_misc']
|
||||||
|
|
||||||
|
[tests/functional/zvol/zvol_swap]
|
||||||
|
tests = ['zvol_swap_001_pos', 'zvol_swap_002_pos', 'zvol_swap_003_pos',
|
||||||
|
'zvol_swap_004_pos', 'zvol_swap_005_pos', 'zvol_swap_006_pos']
|
||||||
|
tags = ['functional', 'zvol', 'zvol_swap']
|
||||||
|
|
||||||
|
[tests/functional/libzfs]
|
||||||
|
tests = ['many_fds', 'libzfs_input']
|
||||||
|
tags = ['functional', 'libzfs']
|
||||||
|
|
||||||
|
[tests/functional/log_spacemap]
|
||||||
|
tests = ['log_spacemap_import_logs']
|
||||||
|
pre =
|
||||||
|
post =
|
||||||
|
tags = ['functional', 'log_spacemap']
|
@ -20,718 +20,70 @@ post = cleanup
|
|||||||
outputdir = /var/tmp/test_results
|
outputdir = /var/tmp/test_results
|
||||||
tags = ['functional']
|
tags = ['functional']
|
||||||
|
|
||||||
[tests/functional/acl/posix]
|
[tests/functional/acl/posix:Linux]
|
||||||
tests = ['posix_001_pos', 'posix_002_pos', 'posix_003_pos']
|
tests = ['posix_001_pos', 'posix_002_pos', 'posix_003_pos']
|
||||||
tags = ['functional', 'acl', 'posix']
|
tags = ['functional', 'acl', 'posix']
|
||||||
|
|
||||||
[tests/functional/alloc_class]
|
[tests/functional/arc:Linux]
|
||||||
tests = ['alloc_class_001_pos', 'alloc_class_002_neg', 'alloc_class_003_pos',
|
|
||||||
'alloc_class_004_pos', 'alloc_class_005_pos', 'alloc_class_006_pos',
|
|
||||||
'alloc_class_007_pos', 'alloc_class_008_pos', 'alloc_class_009_pos',
|
|
||||||
'alloc_class_010_pos', 'alloc_class_011_neg', 'alloc_class_012_pos',
|
|
||||||
'alloc_class_013_pos']
|
|
||||||
tags = ['functional', 'alloc_class']
|
|
||||||
|
|
||||||
[tests/functional/arc]
|
|
||||||
tests = ['dbufstats_001_pos', 'dbufstats_002_pos', 'dbufstats_003_pos']
|
tests = ['dbufstats_001_pos', 'dbufstats_002_pos', 'dbufstats_003_pos']
|
||||||
tags = ['functional', 'arc']
|
tags = ['functional', 'arc']
|
||||||
|
|
||||||
[tests/functional/atime]
|
[tests/functional/atime:Linux]
|
||||||
tests = ['atime_001_pos', 'atime_002_neg', 'atime_003_pos', 'root_atime_off',
|
tests = ['root_relatime_on']
|
||||||
'root_atime_on', 'root_relatime_on']
|
|
||||||
tags = ['functional', 'atime']
|
tags = ['functional', 'atime']
|
||||||
|
|
||||||
[tests/functional/bootfs]
|
[tests/functional/chattr:Linux]
|
||||||
tests = ['bootfs_001_pos', 'bootfs_002_neg', 'bootfs_003_pos',
|
|
||||||
'bootfs_004_neg', 'bootfs_005_neg', 'bootfs_006_pos', 'bootfs_007_pos',
|
|
||||||
'bootfs_008_pos']
|
|
||||||
tags = ['functional', 'bootfs']
|
|
||||||
|
|
||||||
[tests/functional/cache]
|
|
||||||
tests = ['cache_001_pos', 'cache_002_pos', 'cache_003_pos', 'cache_004_neg',
|
|
||||||
'cache_005_neg', 'cache_006_pos', 'cache_007_neg', 'cache_008_neg',
|
|
||||||
'cache_009_pos', 'cache_010_neg', 'cache_011_pos']
|
|
||||||
tags = ['functional', 'cache']
|
|
||||||
|
|
||||||
[tests/functional/cachefile]
|
|
||||||
tests = ['cachefile_001_pos', 'cachefile_002_pos', 'cachefile_003_pos',
|
|
||||||
'cachefile_004_pos']
|
|
||||||
tags = ['functional', 'cachefile']
|
|
||||||
|
|
||||||
[tests/functional/casenorm]
|
|
||||||
tests = ['case_all_values', 'norm_all_values', 'mixed_create_failure',
|
|
||||||
'sensitive_none_lookup', 'sensitive_none_delete',
|
|
||||||
'sensitive_formd_lookup', 'sensitive_formd_delete',
|
|
||||||
'insensitive_none_lookup', 'insensitive_none_delete',
|
|
||||||
'insensitive_formd_lookup', 'insensitive_formd_delete',
|
|
||||||
'mixed_none_lookup', 'mixed_none_lookup_ci', 'mixed_none_delete',
|
|
||||||
'mixed_formd_lookup', 'mixed_formd_lookup_ci', 'mixed_formd_delete']
|
|
||||||
tags = ['functional', 'casenorm']
|
|
||||||
|
|
||||||
[tests/functional/channel_program/lua_core]
|
|
||||||
tests = ['tst.args_to_lua', 'tst.divide_by_zero', 'tst.exists',
|
|
||||||
'tst.integer_illegal', 'tst.integer_overflow', 'tst.language_functions_neg',
|
|
||||||
'tst.language_functions_pos', 'tst.large_prog', 'tst.libraries',
|
|
||||||
'tst.memory_limit', 'tst.nested_neg', 'tst.nested_pos', 'tst.nvlist_to_lua',
|
|
||||||
'tst.recursive_neg', 'tst.recursive_pos', 'tst.return_large',
|
|
||||||
'tst.return_nvlist_neg', 'tst.return_nvlist_pos',
|
|
||||||
'tst.return_recursive_table', 'tst.timeout']
|
|
||||||
tags = ['functional', 'channel_program', 'lua_core']
|
|
||||||
|
|
||||||
[tests/functional/channel_program/synctask_core]
|
|
||||||
tests = ['tst.destroy_fs', 'tst.destroy_snap', 'tst.get_count_and_limit',
|
|
||||||
'tst.get_index_props', 'tst.get_mountpoint', 'tst.get_neg',
|
|
||||||
'tst.get_number_props', 'tst.get_string_props', 'tst.get_type',
|
|
||||||
'tst.get_userquota', 'tst.get_written', 'tst.list_bookmarks',
|
|
||||||
'tst.list_children', 'tst.list_clones', 'tst.list_holds',
|
|
||||||
'tst.list_snapshots', 'tst.list_system_props',
|
|
||||||
'tst.list_user_props', 'tst.parse_args_neg','tst.promote_conflict',
|
|
||||||
'tst.promote_multiple', 'tst.promote_simple', 'tst.rollback_mult',
|
|
||||||
'tst.rollback_one', 'tst.snapshot_destroy', 'tst.snapshot_neg',
|
|
||||||
'tst.snapshot_recursive', 'tst.snapshot_simple', 'tst.terminate_by_signal']
|
|
||||||
tags = ['functional', 'channel_program', 'synctask_core']
|
|
||||||
|
|
||||||
[tests/functional/chattr]
|
|
||||||
tests = ['chattr_001_pos', 'chattr_002_neg']
|
tests = ['chattr_001_pos', 'chattr_002_neg']
|
||||||
tags = ['functional', 'chattr']
|
tags = ['functional', 'chattr']
|
||||||
|
|
||||||
[tests/functional/checksum]
|
[tests/functional/cli_root/zfs:Linux]
|
||||||
tests = ['run_edonr_test', 'run_sha2_test', 'run_skein_test',
|
tests = ['zfs_003_neg']
|
||||||
'filetest_001_pos']
|
|
||||||
tags = ['functional', 'checksum']
|
|
||||||
|
|
||||||
[tests/functional/clean_mirror]
|
|
||||||
tests = [ 'clean_mirror_001_pos', 'clean_mirror_002_pos',
|
|
||||||
'clean_mirror_003_pos', 'clean_mirror_004_pos']
|
|
||||||
tags = ['functional', 'clean_mirror']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zdb]
|
|
||||||
tests = ['zdb_001_neg', 'zdb_002_pos', 'zdb_003_pos', 'zdb_004_pos',
|
|
||||||
'zdb_005_pos', 'zdb_006_pos']
|
|
||||||
pre =
|
|
||||||
post =
|
|
||||||
tags = ['functional', 'cli_root', 'zdb']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs]
|
|
||||||
tests = ['zfs_001_neg', 'zfs_002_pos', 'zfs_003_neg']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs']
|
tags = ['functional', 'cli_root', 'zfs']
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_bookmark]
|
[tests/functional/cli_root/zfs_mount:Linux]
|
||||||
tests = ['zfs_bookmark_cliargs']
|
tests = ['zfs_mount_006_pos', 'zfs_mount_008_pos', 'zfs_multi_mount']
|
||||||
tags = ['functional', 'cli_root', 'zfs_bookmark']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_change-key]
|
|
||||||
tests = ['zfs_change-key', 'zfs_change-key_child', 'zfs_change-key_format',
|
|
||||||
'zfs_change-key_inherit', 'zfs_change-key_load', 'zfs_change-key_location',
|
|
||||||
'zfs_change-key_pbkdf2iters', 'zfs_change-key_clones']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_change-key']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_clone]
|
|
||||||
tests = ['zfs_clone_001_neg', 'zfs_clone_002_pos', 'zfs_clone_003_pos',
|
|
||||||
'zfs_clone_004_pos', 'zfs_clone_005_pos', 'zfs_clone_006_pos',
|
|
||||||
'zfs_clone_007_pos', 'zfs_clone_008_neg', 'zfs_clone_009_neg',
|
|
||||||
'zfs_clone_010_pos', 'zfs_clone_encrypted', 'zfs_clone_deeply_nested']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_clone']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_copies]
|
|
||||||
tests = ['zfs_copies_001_pos', 'zfs_copies_002_pos', 'zfs_copies_003_pos',
|
|
||||||
'zfs_copies_004_neg', 'zfs_copies_005_neg', 'zfs_copies_006_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_copies']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_create]
|
|
||||||
tests = ['zfs_create_001_pos', 'zfs_create_002_pos', 'zfs_create_003_pos',
|
|
||||||
'zfs_create_004_pos', 'zfs_create_005_pos', 'zfs_create_006_pos',
|
|
||||||
'zfs_create_007_pos', 'zfs_create_008_neg', 'zfs_create_009_neg',
|
|
||||||
'zfs_create_010_neg', 'zfs_create_011_pos', 'zfs_create_012_pos',
|
|
||||||
'zfs_create_013_pos', 'zfs_create_014_pos', 'zfs_create_encrypted',
|
|
||||||
'zfs_create_crypt_combos', 'zfs_create_dryrun', 'zfs_create_verbose']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_create']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_destroy]
|
|
||||||
tests = ['zfs_clone_livelist_condense_and_disable',
|
|
||||||
'zfs_clone_livelist_condense_races', 'zfs_destroy_001_pos',
|
|
||||||
'zfs_destroy_002_pos', 'zfs_destroy_003_pos',
|
|
||||||
'zfs_destroy_004_pos', 'zfs_destroy_005_neg', 'zfs_destroy_006_neg',
|
|
||||||
'zfs_destroy_007_neg', 'zfs_destroy_008_pos', 'zfs_destroy_009_pos',
|
|
||||||
'zfs_destroy_010_pos', 'zfs_destroy_011_pos', 'zfs_destroy_012_pos',
|
|
||||||
'zfs_destroy_013_neg', 'zfs_destroy_014_pos', 'zfs_destroy_015_pos',
|
|
||||||
'zfs_destroy_016_pos', 'zfs_destroy_clone_livelist',
|
|
||||||
'zfs_destroy_dev_removal', 'zfs_destroy_dev_removal_condense']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_destroy']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_diff]
|
|
||||||
tests = ['zfs_diff_changes', 'zfs_diff_cliargs', 'zfs_diff_timestamp',
|
|
||||||
'zfs_diff_types', 'zfs_diff_encrypted']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_diff']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_get]
|
|
||||||
tests = ['zfs_get_001_pos', 'zfs_get_002_pos', 'zfs_get_003_pos',
|
|
||||||
'zfs_get_004_pos', 'zfs_get_005_neg', 'zfs_get_006_neg', 'zfs_get_007_neg',
|
|
||||||
'zfs_get_008_pos', 'zfs_get_009_pos', 'zfs_get_010_neg']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_get']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_inherit]
|
|
||||||
tests = ['zfs_inherit_001_neg', 'zfs_inherit_002_neg', 'zfs_inherit_003_pos',
|
|
||||||
'zfs_inherit_mountpoint']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_inherit']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_load-key]
|
|
||||||
tests = ['zfs_load-key', 'zfs_load-key_all', 'zfs_load-key_file',
|
|
||||||
'zfs_load-key_location', 'zfs_load-key_noop', 'zfs_load-key_recursive']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_load-key']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_mount]
|
|
||||||
tests = ['zfs_mount_001_pos', 'zfs_mount_002_pos', 'zfs_mount_003_pos',
|
|
||||||
'zfs_mount_004_pos', 'zfs_mount_005_pos', 'zfs_mount_006_pos',
|
|
||||||
'zfs_mount_007_pos', 'zfs_mount_008_pos', 'zfs_mount_009_neg',
|
|
||||||
'zfs_mount_010_neg', 'zfs_mount_011_neg', 'zfs_mount_012_neg',
|
|
||||||
'zfs_mount_all_001_pos', 'zfs_mount_encrypted', 'zfs_mount_remount',
|
|
||||||
'zfs_multi_mount', 'zfs_mount_all_fail', 'zfs_mount_all_mountpoints',
|
|
||||||
'zfs_mount_test_race']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_mount']
|
tags = ['functional', 'cli_root', 'zfs_mount']
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_program]
|
[tests/functional/cli_root/zpool_events:Linux]
|
||||||
tests = ['zfs_program_json']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_program']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_promote]
|
|
||||||
tests = ['zfs_promote_001_pos', 'zfs_promote_002_pos', 'zfs_promote_003_pos',
|
|
||||||
'zfs_promote_004_pos', 'zfs_promote_005_pos', 'zfs_promote_006_neg',
|
|
||||||
'zfs_promote_007_neg', 'zfs_promote_008_pos', 'zfs_promote_encryptionroot']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_promote']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_property]
|
|
||||||
tests = ['zfs_written_property_001_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_property']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_receive]
|
|
||||||
tests = ['zfs_receive_001_pos', 'zfs_receive_002_pos', 'zfs_receive_003_pos',
|
|
||||||
'zfs_receive_004_neg', 'zfs_receive_005_neg', 'zfs_receive_006_pos',
|
|
||||||
'zfs_receive_007_neg', 'zfs_receive_008_pos', 'zfs_receive_009_neg',
|
|
||||||
'zfs_receive_010_pos', 'zfs_receive_011_pos', 'zfs_receive_012_pos',
|
|
||||||
'zfs_receive_013_pos', 'zfs_receive_014_pos', 'zfs_receive_015_pos',
|
|
||||||
'receive-o-x_props_override', 'zfs_receive_from_encrypted',
|
|
||||||
'zfs_receive_to_encrypted', 'zfs_receive_raw',
|
|
||||||
'zfs_receive_raw_incremental', 'zfs_receive_-e', 'zfs_receive_raw_-d']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_receive']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_rename]
|
|
||||||
tests = ['zfs_rename_001_pos', 'zfs_rename_002_pos', 'zfs_rename_003_pos',
|
|
||||||
'zfs_rename_004_neg', 'zfs_rename_005_neg', 'zfs_rename_006_pos',
|
|
||||||
'zfs_rename_007_pos', 'zfs_rename_008_pos', 'zfs_rename_009_neg',
|
|
||||||
'zfs_rename_010_neg', 'zfs_rename_011_pos', 'zfs_rename_012_neg',
|
|
||||||
'zfs_rename_013_pos', 'zfs_rename_014_neg', 'zfs_rename_encrypted_child',
|
|
||||||
'zfs_rename_to_encrypted', 'zfs_rename_mountpoint']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_rename']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_reservation]
|
|
||||||
tests = ['zfs_reservation_001_pos', 'zfs_reservation_002_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_reservation']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_rollback]
|
|
||||||
tests = ['zfs_rollback_001_pos', 'zfs_rollback_002_pos',
|
|
||||||
'zfs_rollback_003_neg', 'zfs_rollback_004_neg']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_rollback']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_send]
|
|
||||||
tests = ['zfs_send_001_pos', 'zfs_send_002_pos', 'zfs_send_003_pos',
|
|
||||||
'zfs_send_004_neg', 'zfs_send_005_pos', 'zfs_send_006_pos',
|
|
||||||
'zfs_send_007_pos', 'zfs_send_encrypted', 'zfs_send_raw',
|
|
||||||
'zfs_send_sparse', 'zfs_send-b']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_send']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_set]
|
|
||||||
tests = ['cache_001_pos', 'cache_002_neg', 'canmount_001_pos',
|
|
||||||
'canmount_002_pos', 'canmount_003_pos', 'canmount_004_pos',
|
|
||||||
'checksum_001_pos', 'compression_001_pos', 'mountpoint_001_pos',
|
|
||||||
'mountpoint_002_pos', 'reservation_001_neg', 'user_property_002_pos',
|
|
||||||
'share_mount_001_neg', 'snapdir_001_pos', 'onoffs_001_pos',
|
|
||||||
'user_property_001_pos', 'user_property_003_neg', 'readonly_001_pos',
|
|
||||||
'user_property_004_pos', 'version_001_neg', 'zfs_set_001_neg',
|
|
||||||
'zfs_set_002_neg', 'zfs_set_003_neg', 'property_alias_001_pos',
|
|
||||||
'mountpoint_003_pos', 'ro_props_001_pos', 'zfs_set_keylocation']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_set']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_share]
|
|
||||||
tests = ['zfs_share_001_pos', 'zfs_share_002_pos', 'zfs_share_003_pos',
|
|
||||||
'zfs_share_004_pos', 'zfs_share_005_pos', 'zfs_share_006_pos',
|
|
||||||
'zfs_share_007_neg', 'zfs_share_008_neg', 'zfs_share_009_neg',
|
|
||||||
'zfs_share_010_neg', 'zfs_share_011_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_share']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_snapshot]
|
|
||||||
tests = ['zfs_snapshot_001_neg', 'zfs_snapshot_002_neg',
|
|
||||||
'zfs_snapshot_003_neg', 'zfs_snapshot_004_neg', 'zfs_snapshot_005_neg',
|
|
||||||
'zfs_snapshot_006_pos', 'zfs_snapshot_007_neg', 'zfs_snapshot_008_neg',
|
|
||||||
'zfs_snapshot_009_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_snapshot']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_sysfs]
|
|
||||||
tests = ['zfeature_set_unsupported.ksh', 'zfs_get_unsupported',
|
|
||||||
'zfs_set_unsupported', 'zfs_sysfs_live.ksh', 'zpool_get_unsupported',
|
|
||||||
'zpool_set_unsupported']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_sysfs']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_unload-key]
|
|
||||||
tests = ['zfs_unload-key', 'zfs_unload-key_all', 'zfs_unload-key_recursive']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_unload-key']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_unmount]
|
|
||||||
tests = ['zfs_unmount_001_pos', 'zfs_unmount_002_pos', 'zfs_unmount_003_pos',
|
|
||||||
'zfs_unmount_004_pos', 'zfs_unmount_005_pos', 'zfs_unmount_006_pos',
|
|
||||||
'zfs_unmount_007_neg', 'zfs_unmount_008_neg', 'zfs_unmount_009_pos',
|
|
||||||
'zfs_unmount_all_001_pos', 'zfs_unmount_nested', 'zfs_unmount_unload_keys']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_unmount']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_unshare]
|
|
||||||
tests = ['zfs_unshare_001_pos', 'zfs_unshare_002_pos', 'zfs_unshare_003_pos',
|
|
||||||
'zfs_unshare_004_neg', 'zfs_unshare_005_neg', 'zfs_unshare_006_pos',
|
|
||||||
'zfs_unshare_007_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_unshare']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zfs_upgrade]
|
|
||||||
tests = ['zfs_upgrade_001_pos', 'zfs_upgrade_002_pos', 'zfs_upgrade_003_pos',
|
|
||||||
'zfs_upgrade_004_pos', 'zfs_upgrade_005_pos', 'zfs_upgrade_006_neg',
|
|
||||||
'zfs_upgrade_007_neg']
|
|
||||||
tags = ['functional', 'cli_root', 'zfs_upgrade']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool]
|
|
||||||
tests = ['zpool_001_neg', 'zpool_002_pos', 'zpool_003_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_add]
|
|
||||||
tests = ['zpool_add_001_pos', 'zpool_add_002_pos', 'zpool_add_003_pos',
|
|
||||||
'zpool_add_004_pos', 'zpool_add_005_pos', 'zpool_add_006_pos',
|
|
||||||
'zpool_add_007_neg', 'zpool_add_008_neg', 'zpool_add_009_neg',
|
|
||||||
'zpool_add_010_pos',
|
|
||||||
'add-o_ashift', 'add_prop_ashift', 'add_nested_replacing_spare']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_add']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_attach]
|
|
||||||
tests = ['zpool_attach_001_neg', 'attach-o_ashift']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_attach']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_clear]
|
|
||||||
tests = ['zpool_clear_001_pos', 'zpool_clear_002_neg', 'zpool_clear_003_neg',
|
|
||||||
'zpool_clear_readonly']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_clear']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_create]
|
|
||||||
tests = ['zpool_create_001_pos', 'zpool_create_002_pos',
|
|
||||||
'zpool_create_003_pos', 'zpool_create_004_pos', 'zpool_create_005_pos',
|
|
||||||
'zpool_create_006_pos', 'zpool_create_007_neg', 'zpool_create_008_pos',
|
|
||||||
'zpool_create_009_neg', 'zpool_create_010_neg', 'zpool_create_011_neg',
|
|
||||||
'zpool_create_012_neg', 'zpool_create_014_neg',
|
|
||||||
'zpool_create_015_neg', 'zpool_create_016_pos', 'zpool_create_017_neg',
|
|
||||||
'zpool_create_018_pos', 'zpool_create_019_pos', 'zpool_create_020_pos',
|
|
||||||
'zpool_create_021_pos', 'zpool_create_022_pos', 'zpool_create_023_neg',
|
|
||||||
'zpool_create_024_pos',
|
|
||||||
'zpool_create_encrypted', 'zpool_create_crypt_combos',
|
|
||||||
'zpool_create_features_001_pos', 'zpool_create_features_002_pos',
|
|
||||||
'zpool_create_features_003_pos', 'zpool_create_features_004_neg',
|
|
||||||
'zpool_create_features_005_pos',
|
|
||||||
'create-o_ashift', 'zpool_create_tempname']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_create']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_destroy]
|
|
||||||
tests = ['zpool_destroy_001_pos', 'zpool_destroy_002_pos',
|
|
||||||
'zpool_destroy_003_neg']
|
|
||||||
pre =
|
|
||||||
post =
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_destroy']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_detach]
|
|
||||||
tests = ['zpool_detach_001_neg']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_detach']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_events]
|
|
||||||
tests = ['zpool_events_clear', 'zpool_events_cliargs', 'zpool_events_follow',
|
tests = ['zpool_events_clear', 'zpool_events_cliargs', 'zpool_events_follow',
|
||||||
'zpool_events_poolname', 'zpool_events_errors']
|
'zpool_events_poolname', 'zpool_events_errors']
|
||||||
tags = ['functional', 'cli_root', 'zpool_events']
|
tags = ['functional', 'cli_root', 'zpool_events']
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_expand]
|
[tests/functional/compression:Linux]
|
||||||
tests = ['zpool_expand_001_pos', 'zpool_expand_002_pos',
|
tests = ['compress_004_pos']
|
||||||
'zpool_expand_003_neg', 'zpool_expand_004_pos', 'zpool_expand_005_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_expand']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_export]
|
|
||||||
tests = ['zpool_export_001_pos', 'zpool_export_002_pos',
|
|
||||||
'zpool_export_003_neg', 'zpool_export_004_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_export']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_get]
|
|
||||||
tests = ['zpool_get_001_pos', 'zpool_get_002_pos', 'zpool_get_003_pos',
|
|
||||||
'zpool_get_004_neg', 'zpool_get_005_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_get']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_history]
|
|
||||||
tests = ['zpool_history_001_neg', 'zpool_history_002_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_history']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_import]
|
|
||||||
tests = ['zpool_import_001_pos', 'zpool_import_002_pos',
|
|
||||||
'zpool_import_003_pos', 'zpool_import_004_pos', 'zpool_import_005_pos',
|
|
||||||
'zpool_import_006_pos', 'zpool_import_007_pos', 'zpool_import_008_pos',
|
|
||||||
'zpool_import_009_neg', 'zpool_import_010_pos', 'zpool_import_011_neg',
|
|
||||||
'zpool_import_012_pos', 'zpool_import_013_neg', 'zpool_import_014_pos',
|
|
||||||
'zpool_import_015_pos',
|
|
||||||
'zpool_import_features_001_pos', 'zpool_import_features_002_neg',
|
|
||||||
'zpool_import_features_003_pos', 'zpool_import_missing_001_pos',
|
|
||||||
'zpool_import_missing_002_pos', 'zpool_import_missing_003_pos',
|
|
||||||
'zpool_import_rename_001_pos', 'zpool_import_all_001_pos',
|
|
||||||
'zpool_import_encrypted', 'zpool_import_encrypted_load',
|
|
||||||
'zpool_import_errata3', 'zpool_import_errata4',
|
|
||||||
'import_cachefile_device_added',
|
|
||||||
'import_cachefile_device_removed',
|
|
||||||
'import_cachefile_device_replaced',
|
|
||||||
'import_cachefile_mirror_attached',
|
|
||||||
'import_cachefile_mirror_detached',
|
|
||||||
'import_cachefile_shared_device',
|
|
||||||
'import_devices_missing',
|
|
||||||
'import_paths_changed',
|
|
||||||
'import_rewind_config_changed',
|
|
||||||
'import_rewind_device_replaced']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_import']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_labelclear]
|
|
||||||
tests = ['zpool_labelclear_active', 'zpool_labelclear_exported',
|
|
||||||
'zpool_labelclear_removed', 'zpool_labelclear_valid']
|
|
||||||
pre =
|
|
||||||
post =
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_labelclear']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_initialize]
|
|
||||||
tests = ['zpool_initialize_attach_detach_add_remove',
|
|
||||||
'zpool_initialize_import_export',
|
|
||||||
'zpool_initialize_offline_export_import_online',
|
|
||||||
'zpool_initialize_online_offline',
|
|
||||||
'zpool_initialize_split',
|
|
||||||
'zpool_initialize_start_and_cancel_neg',
|
|
||||||
'zpool_initialize_start_and_cancel_pos',
|
|
||||||
'zpool_initialize_suspend_resume',
|
|
||||||
'zpool_initialize_unsupported_vdevs',
|
|
||||||
'zpool_initialize_verify_checksums',
|
|
||||||
'zpool_initialize_verify_initialized']
|
|
||||||
pre =
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_initialize']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_offline]
|
|
||||||
tests = ['zpool_offline_001_pos', 'zpool_offline_002_neg',
|
|
||||||
'zpool_offline_003_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_offline']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_online]
|
|
||||||
tests = ['zpool_online_001_pos', 'zpool_online_002_neg']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_online']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_remove]
|
|
||||||
tests = ['zpool_remove_001_neg', 'zpool_remove_002_pos',
|
|
||||||
'zpool_remove_003_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_remove']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_reopen]
|
|
||||||
tests = ['zpool_reopen_001_pos', 'zpool_reopen_002_pos',
|
|
||||||
'zpool_reopen_003_pos', 'zpool_reopen_004_pos', 'zpool_reopen_005_pos',
|
|
||||||
'zpool_reopen_006_neg', 'zpool_reopen_007_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_reopen']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_replace]
|
|
||||||
tests = ['zpool_replace_001_neg', 'replace-o_ashift', 'replace_prop_ashift']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_replace']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_resilver]
|
|
||||||
tests = ['zpool_resilver_bad_args', 'zpool_resilver_restart']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_resilver']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_scrub]
|
|
||||||
tests = ['zpool_scrub_001_neg', 'zpool_scrub_002_pos', 'zpool_scrub_003_pos',
|
|
||||||
'zpool_scrub_004_pos', 'zpool_scrub_005_pos',
|
|
||||||
'zpool_scrub_encrypted_unloaded', 'zpool_scrub_print_repairing',
|
|
||||||
'zpool_scrub_offline_device', 'zpool_scrub_multiple_copies']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_scrub']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_set]
|
|
||||||
tests = ['zpool_set_001_pos', 'zpool_set_002_neg', 'zpool_set_003_neg',
|
|
||||||
'zpool_set_ashift', 'zpool_set_features']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_set']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_split]
|
|
||||||
tests = ['zpool_split_cliargs', 'zpool_split_devices',
|
|
||||||
'zpool_split_encryption', 'zpool_split_props', 'zpool_split_vdevs',
|
|
||||||
'zpool_split_resilver', 'zpool_split_wholedisk']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_split']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_status]
|
|
||||||
tests = ['zpool_status_001_pos', 'zpool_status_002_pos']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_status']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_sync]
|
|
||||||
tests = ['zpool_sync_001_pos', 'zpool_sync_002_neg']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_sync']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_trim]
|
|
||||||
tests = ['zpool_trim_attach_detach_add_remove',
|
|
||||||
'zpool_trim_import_export', 'zpool_trim_multiple', 'zpool_trim_neg',
|
|
||||||
'zpool_trim_offline_export_import_online', 'zpool_trim_online_offline',
|
|
||||||
'zpool_trim_partial', 'zpool_trim_rate', 'zpool_trim_rate_neg',
|
|
||||||
'zpool_trim_secure', 'zpool_trim_split', 'zpool_trim_start_and_cancel_neg',
|
|
||||||
'zpool_trim_start_and_cancel_pos', 'zpool_trim_suspend_resume',
|
|
||||||
'zpool_trim_unsupported_vdevs', 'zpool_trim_verify_checksums',
|
|
||||||
'zpool_trim_verify_trimmed']
|
|
||||||
tags = ['functional', 'zpool_trim']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_upgrade]
|
|
||||||
tests = ['zpool_upgrade_001_pos', 'zpool_upgrade_002_pos',
|
|
||||||
'zpool_upgrade_003_pos', 'zpool_upgrade_004_pos',
|
|
||||||
'zpool_upgrade_005_neg', 'zpool_upgrade_006_neg',
|
|
||||||
'zpool_upgrade_007_pos', 'zpool_upgrade_008_pos',
|
|
||||||
'zpool_upgrade_009_neg']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_upgrade']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_wait]
|
|
||||||
tests = ['zpool_wait_discard', 'zpool_wait_freeing',
|
|
||||||
'zpool_wait_initialize_basic', 'zpool_wait_initialize_cancel',
|
|
||||||
'zpool_wait_initialize_flag', 'zpool_wait_multiple',
|
|
||||||
'zpool_wait_no_activity', 'zpool_wait_remove', 'zpool_wait_remove_cancel',
|
|
||||||
'zpool_wait_usage']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_wait']
|
|
||||||
|
|
||||||
[tests/functional/cli_root/zpool_wait/scan]
|
|
||||||
tests = ['zpool_wait_replace_cancel', 'zpool_wait_resilver', 'zpool_wait_scrub_cancel',
|
|
||||||
'zpool_wait_replace', 'zpool_wait_scrub_basic', 'zpool_wait_scrub_flag']
|
|
||||||
tags = ['functional', 'cli_root', 'zpool_wait']
|
|
||||||
|
|
||||||
[tests/functional/cli_user/misc]
|
|
||||||
tests = ['zdb_001_neg', 'zfs_001_neg', 'zfs_allow_001_neg',
|
|
||||||
'zfs_clone_001_neg', 'zfs_create_001_neg', 'zfs_destroy_001_neg',
|
|
||||||
'zfs_get_001_neg', 'zfs_inherit_001_neg', 'zfs_mount_001_neg',
|
|
||||||
'zfs_promote_001_neg', 'zfs_receive_001_neg', 'zfs_rename_001_neg',
|
|
||||||
'zfs_rollback_001_neg', 'zfs_send_001_neg', 'zfs_set_001_neg',
|
|
||||||
'zfs_share_001_neg', 'zfs_snapshot_001_neg', 'zfs_unallow_001_neg',
|
|
||||||
'zfs_unmount_001_neg', 'zfs_unshare_001_neg', 'zfs_upgrade_001_neg',
|
|
||||||
'zpool_001_neg', 'zpool_add_001_neg', 'zpool_attach_001_neg',
|
|
||||||
'zpool_clear_001_neg', 'zpool_create_001_neg', 'zpool_destroy_001_neg',
|
|
||||||
'zpool_detach_001_neg', 'zpool_export_001_neg', 'zpool_get_001_neg',
|
|
||||||
'zpool_history_001_neg', 'zpool_import_001_neg', 'zpool_import_002_neg',
|
|
||||||
'zpool_offline_001_neg', 'zpool_online_001_neg', 'zpool_remove_001_neg',
|
|
||||||
'zpool_replace_001_neg', 'zpool_scrub_001_neg', 'zpool_set_001_neg',
|
|
||||||
'zpool_status_001_neg', 'zpool_upgrade_001_neg', 'arcstat_001_pos',
|
|
||||||
'arc_summary_001_pos', 'arc_summary_002_neg', 'zpool_wait_privilege']
|
|
||||||
user =
|
|
||||||
tags = ['functional', 'cli_user', 'misc']
|
|
||||||
|
|
||||||
[tests/functional/cli_user/zfs_list]
|
|
||||||
tests = ['zfs_list_001_pos', 'zfs_list_002_pos', 'zfs_list_003_pos',
|
|
||||||
'zfs_list_004_neg', 'zfs_list_007_pos', 'zfs_list_008_neg']
|
|
||||||
user =
|
|
||||||
tags = ['functional', 'cli_user', 'zfs_list']
|
|
||||||
|
|
||||||
[tests/functional/cli_user/zpool_iostat]
|
|
||||||
tests = ['zpool_iostat_001_neg', 'zpool_iostat_002_pos',
|
|
||||||
'zpool_iostat_003_neg', 'zpool_iostat_004_pos',
|
|
||||||
'zpool_iostat_005_pos', 'zpool_iostat_-c_disable',
|
|
||||||
'zpool_iostat_-c_homedir', 'zpool_iostat_-c_searchpath']
|
|
||||||
user =
|
|
||||||
tags = ['functional', 'cli_user', 'zpool_iostat']
|
|
||||||
|
|
||||||
[tests/functional/cli_user/zpool_list]
|
|
||||||
tests = ['zpool_list_001_pos', 'zpool_list_002_neg']
|
|
||||||
user =
|
|
||||||
tags = ['functional', 'cli_user', 'zpool_list']
|
|
||||||
|
|
||||||
[tests/functional/cli_user/zpool_status]
|
|
||||||
tests = ['zpool_status_003_pos', 'zpool_status_-c_disable',
|
|
||||||
'zpool_status_-c_homedir', 'zpool_status_-c_searchpath']
|
|
||||||
user =
|
|
||||||
tags = ['functional', 'cli_user', 'zpool_status']
|
|
||||||
|
|
||||||
[tests/functional/compression]
|
|
||||||
tests = ['compress_001_pos', 'compress_002_pos', 'compress_003_pos',
|
|
||||||
'compress_004_pos']
|
|
||||||
tags = ['functional', 'compression']
|
tags = ['functional', 'compression']
|
||||||
|
|
||||||
[tests/functional/cp_files]
|
[tests/functional/deadman:Linux]
|
||||||
tests = ['cp_files_001_pos']
|
|
||||||
tags = ['functional', 'cp_files']
|
|
||||||
|
|
||||||
[tests/functional/ctime]
|
|
||||||
tests = ['ctime_001_pos' ]
|
|
||||||
tags = ['functional', 'ctime']
|
|
||||||
|
|
||||||
[tests/functional/deadman]
|
|
||||||
tests = ['deadman_sync', 'deadman_zio']
|
tests = ['deadman_sync', 'deadman_zio']
|
||||||
pre =
|
pre =
|
||||||
post =
|
post =
|
||||||
tags = ['functional', 'deadman']
|
tags = ['functional', 'deadman']
|
||||||
|
|
||||||
[tests/functional/delegate]
|
[tests/functional/devices:Linux]
|
||||||
tests = ['zfs_allow_001_pos', 'zfs_allow_002_pos', 'zfs_allow_003_pos',
|
|
||||||
'zfs_allow_004_pos', 'zfs_allow_005_pos', 'zfs_allow_006_pos',
|
|
||||||
'zfs_allow_007_pos', 'zfs_allow_008_pos', 'zfs_allow_009_neg',
|
|
||||||
'zfs_allow_010_pos', 'zfs_allow_011_neg', 'zfs_allow_012_neg',
|
|
||||||
'zfs_unallow_001_pos', 'zfs_unallow_002_pos', 'zfs_unallow_003_pos',
|
|
||||||
'zfs_unallow_004_pos', 'zfs_unallow_005_pos', 'zfs_unallow_006_pos',
|
|
||||||
'zfs_unallow_007_neg', 'zfs_unallow_008_neg']
|
|
||||||
tags = ['functional', 'delegate']
|
|
||||||
|
|
||||||
[tests/functional/devices]
|
|
||||||
tests = ['devices_001_pos', 'devices_002_neg', 'devices_003_pos']
|
tests = ['devices_001_pos', 'devices_002_neg', 'devices_003_pos']
|
||||||
tags = ['functional', 'devices']
|
tags = ['functional', 'devices']
|
||||||
|
|
||||||
[tests/functional/events]
|
[tests/functional/events:Linux]
|
||||||
tests = ['events_001_pos', 'events_002_pos', 'zed_rc_filter']
|
tests = ['events_001_pos', 'events_002_pos', 'zed_rc_filter']
|
||||||
tags = ['functional', 'events']
|
tags = ['functional', 'events']
|
||||||
|
|
||||||
[tests/functional/exec]
|
[tests/functional/fault:Linux]
|
||||||
tests = ['exec_001_pos', 'exec_002_neg']
|
tests = ['auto_spare_ashift', 'scrub_after_resilver', 'zpool_status_-s']
|
||||||
tags = ['functional', 'exec']
|
|
||||||
|
|
||||||
[tests/functional/fault]
|
|
||||||
tests = ['auto_offline_001_pos', 'auto_online_001_pos', 'auto_replace_001_pos',
|
|
||||||
'auto_spare_001_pos', 'auto_spare_002_pos', 'auto_spare_ashift',
|
|
||||||
'auto_spare_multiple', 'auto_spare_shared', 'scrub_after_resilver',
|
|
||||||
'decrypt_fault', 'decompress_fault', 'zpool_status_-s']
|
|
||||||
tags = ['functional', 'fault']
|
tags = ['functional', 'fault']
|
||||||
|
|
||||||
[tests/functional/features/async_destroy]
|
[tests/functional/features/large_dnode:Linux]
|
||||||
tests = ['async_destroy_001_pos']
|
tests = ['large_dnode_002_pos', 'large_dnode_006_pos', 'large_dnode_008_pos']
|
||||||
tags = ['functional', 'features', 'async_destroy']
|
|
||||||
|
|
||||||
[tests/functional/features/large_dnode]
|
|
||||||
tests = ['large_dnode_001_pos', 'large_dnode_002_pos', 'large_dnode_003_pos',
|
|
||||||
'large_dnode_004_neg', 'large_dnode_005_pos', 'large_dnode_006_pos',
|
|
||||||
'large_dnode_007_neg', 'large_dnode_008_pos', 'large_dnode_009_pos']
|
|
||||||
tags = ['functional', 'features', 'large_dnode']
|
tags = ['functional', 'features', 'large_dnode']
|
||||||
|
|
||||||
[tests/functional/grow]
|
[tests/functional/io:Linux]
|
||||||
pre =
|
tests = ['libaio']
|
||||||
post =
|
|
||||||
tests = ['grow_pool_001_pos', 'grow_replicas_001_pos']
|
|
||||||
tags = ['functional', 'grow']
|
|
||||||
|
|
||||||
[tests/functional/history]
|
|
||||||
tests = ['history_001_pos', 'history_002_pos', 'history_003_pos',
|
|
||||||
'history_004_pos', 'history_005_neg', 'history_006_neg',
|
|
||||||
'history_007_pos', 'history_008_pos', 'history_009_pos',
|
|
||||||
'history_010_pos']
|
|
||||||
tags = ['functional', 'history']
|
|
||||||
|
|
||||||
[tests/functional/hkdf]
|
|
||||||
tests = ['run_hkdf_test']
|
|
||||||
tags = ['functional', 'hkdf']
|
|
||||||
|
|
||||||
[tests/functional/inheritance]
|
|
||||||
tests = ['inherit_001_pos']
|
|
||||||
pre =
|
|
||||||
tags = ['functional', 'inheritance']
|
|
||||||
|
|
||||||
[tests/functional/io]
|
|
||||||
tests = ['sync', 'psync', 'libaio', 'posixaio', 'mmap']
|
|
||||||
tags = ['functional', 'io']
|
tags = ['functional', 'io']
|
||||||
|
|
||||||
[tests/functional/inuse]
|
[tests/functional/mmap:Linux]
|
||||||
tests = ['inuse_001_pos', 'inuse_003_pos', 'inuse_004_pos',
|
tests = ['mmap_libaio_001_pos']
|
||||||
'inuse_005_pos', 'inuse_006_pos', 'inuse_007_pos', 'inuse_008_pos',
|
|
||||||
'inuse_009_pos']
|
|
||||||
post =
|
|
||||||
tags = ['functional', 'inuse']
|
|
||||||
|
|
||||||
[tests/functional/large_files]
|
|
||||||
tests = ['large_files_001_pos', 'large_files_002_pos']
|
|
||||||
tags = ['functional', 'large_files']
|
|
||||||
|
|
||||||
[tests/functional/largest_pool]
|
|
||||||
tests = ['largest_pool_001_pos']
|
|
||||||
pre =
|
|
||||||
post =
|
|
||||||
tags = ['functional', 'largest_pool']
|
|
||||||
|
|
||||||
[tests/functional/limits]
|
|
||||||
tests = ['filesystem_count', 'filesystem_limit', 'snapshot_count',
|
|
||||||
'snapshot_limit']
|
|
||||||
tags = ['functional', 'limits']
|
|
||||||
|
|
||||||
[tests/functional/link_count]
|
|
||||||
tests = ['link_count_001', 'link_count_root_inode.ksh']
|
|
||||||
tags = ['functional', 'link_count']
|
|
||||||
|
|
||||||
[tests/functional/migration]
|
|
||||||
tests = ['migration_001_pos', 'migration_002_pos', 'migration_003_pos',
|
|
||||||
'migration_004_pos', 'migration_005_pos', 'migration_006_pos',
|
|
||||||
'migration_007_pos', 'migration_008_pos', 'migration_009_pos',
|
|
||||||
'migration_010_pos', 'migration_011_pos', 'migration_012_pos']
|
|
||||||
tags = ['functional', 'migration']
|
|
||||||
|
|
||||||
[tests/functional/mmap]
|
|
||||||
tests = ['mmap_write_001_pos', 'mmap_read_001_pos', 'mmap_libaio_001_pos']
|
|
||||||
tags = ['functional', 'mmap']
|
tags = ['functional', 'mmap']
|
||||||
|
|
||||||
[tests/functional/mmp]
|
[tests/functional/projectquota:Linux]
|
||||||
tests = ['mmp_on_thread', 'mmp_on_uberblocks', 'mmp_on_off', 'mmp_interval',
|
|
||||||
'mmp_active_import', 'mmp_inactive_import', 'mmp_exported_import',
|
|
||||||
'mmp_write_uberblocks', 'mmp_reset_interval', 'multihost_history',
|
|
||||||
'mmp_on_zdb', 'mmp_write_distribution', 'mmp_hostid']
|
|
||||||
tags = ['functional', 'mmp']
|
|
||||||
|
|
||||||
[tests/functional/mount]
|
|
||||||
tests = ['umount_001', 'umount_unlinked_drain', 'umountall_001']
|
|
||||||
tags = ['functional', 'mount']
|
|
||||||
|
|
||||||
[tests/functional/mv_files]
|
|
||||||
tests = ['mv_files_001_pos', 'mv_files_002_pos', 'random_creation']
|
|
||||||
tags = ['functional', 'mv_files']
|
|
||||||
|
|
||||||
[tests/functional/nestedfs]
|
|
||||||
tests = ['nestedfs_001_pos']
|
|
||||||
tags = ['functional', 'nestedfs']
|
|
||||||
|
|
||||||
[tests/functional/no_space]
|
|
||||||
tests = ['enospc_001_pos', 'enospc_002_pos', 'enospc_003_pos',
|
|
||||||
'enospc_df']
|
|
||||||
tags = ['functional', 'no_space']
|
|
||||||
|
|
||||||
[tests/functional/nopwrite]
|
|
||||||
tests = ['nopwrite_copies', 'nopwrite_mtime', 'nopwrite_negative',
|
|
||||||
'nopwrite_promoted_clone', 'nopwrite_recsize', 'nopwrite_sync',
|
|
||||||
'nopwrite_varying_compression', 'nopwrite_volume']
|
|
||||||
tags = ['functional', 'nopwrite']
|
|
||||||
|
|
||||||
[tests/functional/online_offline]
|
|
||||||
tests = ['online_offline_001_pos', 'online_offline_002_neg',
|
|
||||||
'online_offline_003_neg']
|
|
||||||
tags = ['functional', 'online_offline']
|
|
||||||
|
|
||||||
[tests/functional/pool_checkpoint]
|
|
||||||
tests = ['checkpoint_after_rewind', 'checkpoint_big_rewind',
|
|
||||||
'checkpoint_capacity', 'checkpoint_conf_change', 'checkpoint_discard',
|
|
||||||
'checkpoint_discard_busy', 'checkpoint_discard_many',
|
|
||||||
'checkpoint_indirect', 'checkpoint_invalid', 'checkpoint_lun_expsz',
|
|
||||||
'checkpoint_open', 'checkpoint_removal', 'checkpoint_rewind',
|
|
||||||
'checkpoint_ro_rewind', 'checkpoint_sm_scale', 'checkpoint_twice',
|
|
||||||
'checkpoint_vdev_add', 'checkpoint_zdb', 'checkpoint_zhack_feat']
|
|
||||||
tags = ['functional', 'pool_checkpoint']
|
|
||||||
timeout = 1800
|
|
||||||
|
|
||||||
[tests/functional/pool_names]
|
|
||||||
tests = ['pool_names_001_pos', 'pool_names_002_neg']
|
|
||||||
pre =
|
|
||||||
post =
|
|
||||||
tags = ['functional', 'pool_names']
|
|
||||||
|
|
||||||
[tests/functional/poolversion]
|
|
||||||
tests = ['poolversion_001_pos', 'poolversion_002_pos']
|
|
||||||
tags = ['functional', 'poolversion']
|
|
||||||
|
|
||||||
[tests/functional/privilege]
|
|
||||||
tests = ['privilege_001_pos', 'privilege_002_pos']
|
|
||||||
tags = ['functional', 'privilege']
|
|
||||||
|
|
||||||
[tests/functional/procfs]
|
|
||||||
tests = ['procfs_list_basic', 'procfs_list_concurrent_readers',
|
|
||||||
'procfs_list_stale_read', 'pool_state']
|
|
||||||
tags = ['functional', 'procfs']
|
|
||||||
|
|
||||||
[tests/functional/projectquota]
|
|
||||||
tests = ['projectid_001_pos', 'projectid_002_pos', 'projectid_003_pos',
|
tests = ['projectid_001_pos', 'projectid_002_pos', 'projectid_003_pos',
|
||||||
'projectquota_001_pos', 'projectquota_002_pos', 'projectquota_003_pos',
|
'projectquota_001_pos', 'projectquota_002_pos', 'projectquota_003_pos',
|
||||||
'projectquota_004_neg', 'projectquota_005_pos', 'projectquota_006_pos',
|
'projectquota_004_neg', 'projectquota_005_pos', 'projectquota_006_pos',
|
||||||
@ -741,222 +93,26 @@ tests = ['projectid_001_pos', 'projectid_002_pos', 'projectid_003_pos',
|
|||||||
'projecttree_001_pos', 'projecttree_002_pos', 'projecttree_003_neg']
|
'projecttree_001_pos', 'projecttree_002_pos', 'projecttree_003_neg']
|
||||||
tags = ['functional', 'projectquota']
|
tags = ['functional', 'projectquota']
|
||||||
|
|
||||||
[tests/functional/pyzfs]
|
[tests/functional/rsend:Linux]
|
||||||
tests = ['pyzfs_unittest']
|
tests = ['send_realloc_dnode_size', 'send_encrypted_files']
|
||||||
pre =
|
|
||||||
post =
|
|
||||||
tags = ['functional', 'pyzfs']
|
|
||||||
|
|
||||||
[tests/functional/quota]
|
|
||||||
tests = ['quota_001_pos', 'quota_002_pos', 'quota_003_pos',
|
|
||||||
'quota_004_pos', 'quota_005_pos', 'quota_006_neg']
|
|
||||||
tags = ['functional', 'quota']
|
|
||||||
|
|
||||||
[tests/functional/redacted_send]
|
|
||||||
tests = ['redacted_compressed', 'redacted_contents', 'redacted_deleted',
|
|
||||||
'redacted_disabled_feature', 'redacted_embedded', 'redacted_holes',
|
|
||||||
'redacted_incrementals', 'redacted_largeblocks', 'redacted_many_clones',
|
|
||||||
'redacted_mixed_recsize', 'redacted_mounts', 'redacted_negative',
|
|
||||||
'redacted_origin', 'redacted_props', 'redacted_resume', 'redacted_size',
|
|
||||||
'redacted_volume']
|
|
||||||
tags = ['functional', 'redacted_send']
|
|
||||||
|
|
||||||
[tests/functional/raidz]
|
|
||||||
tests = ['raidz_001_neg', 'raidz_002_pos']
|
|
||||||
tags = ['functional', 'raidz']
|
|
||||||
|
|
||||||
[tests/functional/redundancy]
|
|
||||||
tests = ['redundancy_001_pos', 'redundancy_002_pos', 'redundancy_003_pos',
|
|
||||||
'redundancy_004_neg']
|
|
||||||
tags = ['functional', 'redundancy']
|
|
||||||
|
|
||||||
[tests/functional/refquota]
|
|
||||||
tests = ['refquota_001_pos', 'refquota_002_pos', 'refquota_003_pos',
|
|
||||||
'refquota_004_pos', 'refquota_005_pos', 'refquota_006_neg',
|
|
||||||
'refquota_007_neg', 'refquota_008_neg']
|
|
||||||
tags = ['functional', 'refquota']
|
|
||||||
|
|
||||||
[tests/functional/refreserv]
|
|
||||||
tests = ['refreserv_001_pos', 'refreserv_002_pos', 'refreserv_003_pos',
|
|
||||||
'refreserv_004_pos', 'refreserv_005_pos', 'refreserv_multi_raidz',
|
|
||||||
'refreserv_raidz']
|
|
||||||
tags = ['functional', 'refreserv']
|
|
||||||
|
|
||||||
[tests/functional/removal]
|
|
||||||
pre =
|
|
||||||
tests = ['removal_all_vdev', 'removal_cancel', 'removal_check_space',
|
|
||||||
'removal_condense_export', 'removal_multiple_indirection',
|
|
||||||
'removal_nopwrite', 'removal_remap_deadlists',
|
|
||||||
'removal_resume_export', 'removal_sanity', 'removal_with_add',
|
|
||||||
'removal_with_create_fs', 'removal_with_dedup',
|
|
||||||
'removal_with_errors', 'removal_with_export',
|
|
||||||
'removal_with_ganging', 'removal_with_faulted',
|
|
||||||
'removal_with_remove', 'removal_with_scrub', 'removal_with_send',
|
|
||||||
'removal_with_send_recv', 'removal_with_snapshot',
|
|
||||||
'removal_with_write', 'removal_with_zdb', 'remove_expanded',
|
|
||||||
'remove_mirror', 'remove_mirror_sanity', 'remove_raidz',
|
|
||||||
'remove_indirect']
|
|
||||||
tags = ['functional', 'removal']
|
|
||||||
|
|
||||||
[tests/functional/rename_dirs]
|
|
||||||
tests = ['rename_dirs_001_pos']
|
|
||||||
tags = ['functional', 'rename_dirs']
|
|
||||||
|
|
||||||
[tests/functional/replacement]
|
|
||||||
tests = ['replacement_001_pos', 'replacement_002_pos', 'replacement_003_pos']
|
|
||||||
tags = ['functional', 'replacement']
|
|
||||||
|
|
||||||
[tests/functional/reservation]
|
|
||||||
tests = ['reservation_001_pos', 'reservation_002_pos', 'reservation_003_pos',
|
|
||||||
'reservation_004_pos', 'reservation_005_pos', 'reservation_006_pos',
|
|
||||||
'reservation_007_pos', 'reservation_008_pos', 'reservation_009_pos',
|
|
||||||
'reservation_010_pos', 'reservation_011_pos', 'reservation_012_pos',
|
|
||||||
'reservation_013_pos', 'reservation_014_pos', 'reservation_015_pos',
|
|
||||||
'reservation_016_pos', 'reservation_017_pos', 'reservation_018_pos',
|
|
||||||
'reservation_019_pos', 'reservation_020_pos', 'reservation_021_neg',
|
|
||||||
'reservation_022_pos']
|
|
||||||
tags = ['functional', 'reservation']
|
|
||||||
|
|
||||||
[tests/functional/rootpool]
|
|
||||||
tests = ['rootpool_002_neg', 'rootpool_003_neg', 'rootpool_007_pos']
|
|
||||||
tags = ['functional', 'rootpool']
|
|
||||||
|
|
||||||
[tests/functional/rsend]
|
|
||||||
tests = ['rsend_001_pos', 'rsend_002_pos', 'rsend_003_pos', 'rsend_004_pos',
|
|
||||||
'rsend_005_pos', 'rsend_006_pos', 'rsend_007_pos', 'rsend_008_pos',
|
|
||||||
'rsend_009_pos', 'rsend_010_pos', 'rsend_011_pos', 'rsend_012_pos',
|
|
||||||
'rsend_013_pos', 'rsend_014_pos',
|
|
||||||
'rsend_019_pos', 'rsend_020_pos',
|
|
||||||
'rsend_021_pos', 'rsend_022_pos', 'rsend_024_pos',
|
|
||||||
'send-c_verify_ratio', 'send-c_verify_contents', 'send-c_props',
|
|
||||||
'send-c_incremental', 'send-c_volume', 'send-c_zstreamdump',
|
|
||||||
'send-c_lz4_disabled', 'send-c_recv_lz4_disabled',
|
|
||||||
'send-c_mixed_compression', 'send-c_stream_size_estimate', 'send-cD',
|
|
||||||
'send-c_embedded_blocks', 'send-c_resume', 'send-cpL_varied_recsize',
|
|
||||||
'send-c_recv_dedup', 'send_encrypted_files', 'send_encrypted_hierarchy',
|
|
||||||
'send_encrypted_props', 'send_encrypted_truncated_files',
|
|
||||||
'send_freeobjects', 'send_realloc_dnode_size', 'send_realloc_files',
|
|
||||||
'send_realloc_encrypted_files', 'send_spill_block', 'send_holds',
|
|
||||||
'send_hole_birth', 'send_mixed_raw', 'send-wDR_encrypted_zvol']
|
|
||||||
tags = ['functional', 'rsend']
|
tags = ['functional', 'rsend']
|
||||||
|
|
||||||
[tests/functional/scrub_mirror]
|
[tests/functional/snapshot:Linux]
|
||||||
tests = ['scrub_mirror_001_pos', 'scrub_mirror_002_pos',
|
tests = ['snapshot_015_pos', 'snapshot_016_pos']
|
||||||
'scrub_mirror_003_pos', 'scrub_mirror_004_pos']
|
|
||||||
tags = ['functional', 'scrub_mirror']
|
|
||||||
|
|
||||||
[tests/functional/slog]
|
|
||||||
tests = ['slog_001_pos', 'slog_002_pos', 'slog_003_pos', 'slog_004_pos',
|
|
||||||
'slog_005_pos', 'slog_006_pos', 'slog_007_pos', 'slog_008_neg',
|
|
||||||
'slog_009_neg', 'slog_010_neg', 'slog_011_neg', 'slog_012_neg',
|
|
||||||
'slog_013_pos', 'slog_014_pos', 'slog_015_neg', 'slog_replay_fs_001',
|
|
||||||
'slog_replay_fs_002', 'slog_replay_volume']
|
|
||||||
tags = ['functional', 'slog']
|
|
||||||
|
|
||||||
[tests/functional/snapshot]
|
|
||||||
tests = ['clone_001_pos', 'rollback_001_pos', 'rollback_002_pos',
|
|
||||||
'rollback_003_pos', 'snapshot_001_pos', 'snapshot_002_pos',
|
|
||||||
'snapshot_003_pos', 'snapshot_004_pos', 'snapshot_005_pos',
|
|
||||||
'snapshot_006_pos', 'snapshot_007_pos', 'snapshot_008_pos',
|
|
||||||
'snapshot_009_pos', 'snapshot_010_pos', 'snapshot_011_pos',
|
|
||||||
'snapshot_012_pos', 'snapshot_013_pos', 'snapshot_014_pos',
|
|
||||||
'snapshot_015_pos', 'snapshot_016_pos', 'snapshot_017_pos']
|
|
||||||
tags = ['functional', 'snapshot']
|
tags = ['functional', 'snapshot']
|
||||||
|
|
||||||
[tests/functional/snapused]
|
[tests/functional/upgrade:Linux]
|
||||||
tests = ['snapused_001_pos', 'snapused_002_pos', 'snapused_003_pos',
|
tests = ['upgrade_projectquota_001_pos']
|
||||||
'snapused_004_pos', 'snapused_005_pos']
|
|
||||||
tags = ['functional', 'snapused']
|
|
||||||
|
|
||||||
[tests/functional/sparse]
|
|
||||||
tests = ['sparse_001_pos']
|
|
||||||
tags = ['functional', 'sparse']
|
|
||||||
|
|
||||||
[tests/functional/suid]
|
|
||||||
tests = ['suid_write_to_suid', 'suid_write_to_sgid', 'suid_write_to_suid_sgid',
|
|
||||||
'suid_write_to_none']
|
|
||||||
tags = ['functional', 'suid']
|
|
||||||
|
|
||||||
[tests/functional/threadsappend]
|
|
||||||
tests = ['threadsappend_001_pos']
|
|
||||||
tags = ['functional', 'threadsappend']
|
|
||||||
|
|
||||||
[tests/functional/tmpfile]
|
|
||||||
tests = ['tmpfile_001_pos', 'tmpfile_002_pos', 'tmpfile_003_pos']
|
|
||||||
tags = ['functional', 'tmpfile']
|
|
||||||
|
|
||||||
[tests/functional/trim]
|
|
||||||
tests = ['autotrim_integrity', 'autotrim_config', 'autotrim_trim_integrity',
|
|
||||||
'trim_integrity', 'trim_config']
|
|
||||||
tags = ['functional', 'trim']
|
|
||||||
|
|
||||||
[tests/functional/truncate]
|
|
||||||
tests = ['truncate_001_pos', 'truncate_002_pos', 'truncate_timestamps']
|
|
||||||
tags = ['functional', 'truncate']
|
|
||||||
|
|
||||||
[tests/functional/upgrade]
|
|
||||||
tests = ['upgrade_userobj_001_pos', 'upgrade_projectquota_001_pos',
|
|
||||||
'upgrade_readonly_pool']
|
|
||||||
tags = ['functional', 'upgrade']
|
tags = ['functional', 'upgrade']
|
||||||
|
|
||||||
[tests/functional/user_namespace]
|
[tests/functional/userquota:Linux]
|
||||||
tests = ['user_namespace_001']
|
tests = ['groupspace_001_pos', 'groupspace_002_pos', 'groupspace_003_pos',
|
||||||
tags = ['functional', 'user_namespace']
|
'userquota_013_pos', 'userspace_003_pos']
|
||||||
|
|
||||||
[tests/functional/userquota]
|
|
||||||
tests = [
|
|
||||||
'userquota_001_pos', 'userquota_002_pos', 'userquota_003_pos',
|
|
||||||
'userquota_004_pos', 'userquota_005_neg', 'userquota_006_pos',
|
|
||||||
'userquota_007_pos', 'userquota_008_pos', 'userquota_009_pos',
|
|
||||||
'userquota_010_pos', 'userquota_011_pos', 'userquota_012_neg',
|
|
||||||
'userquota_013_pos',
|
|
||||||
'userspace_001_pos', 'userspace_002_pos', 'userspace_003_pos',
|
|
||||||
'groupspace_001_pos', 'groupspace_002_pos', 'groupspace_003_pos' ]
|
|
||||||
tags = ['functional', 'userquota']
|
tags = ['functional', 'userquota']
|
||||||
|
|
||||||
[tests/functional/vdev_zaps]
|
[tests/functional/xattr:Linux]
|
||||||
tests = ['vdev_zaps_001_pos', 'vdev_zaps_002_pos', 'vdev_zaps_003_pos',
|
|
||||||
'vdev_zaps_004_pos', 'vdev_zaps_005_pos', 'vdev_zaps_006_pos',
|
|
||||||
'vdev_zaps_007_pos']
|
|
||||||
tags = ['functional', 'vdev_zaps']
|
|
||||||
|
|
||||||
[tests/functional/write_dirs]
|
|
||||||
tests = ['write_dirs_001_pos', 'write_dirs_002_pos']
|
|
||||||
tags = ['functional', 'write_dirs']
|
|
||||||
|
|
||||||
[tests/functional/xattr]
|
|
||||||
tests = ['xattr_001_pos', 'xattr_002_neg', 'xattr_003_neg', 'xattr_004_pos',
|
tests = ['xattr_001_pos', 'xattr_002_neg', 'xattr_003_neg', 'xattr_004_pos',
|
||||||
'xattr_005_pos', 'xattr_006_pos', 'xattr_007_neg', 'xattr_008_pos',
|
'xattr_005_pos', 'xattr_006_pos', 'xattr_007_neg', 'xattr_008_pos',
|
||||||
'xattr_009_neg', 'xattr_010_neg', 'xattr_011_pos', 'xattr_012_pos',
|
'xattr_009_neg', 'xattr_010_neg', 'xattr_011_pos', 'xattr_012_pos',
|
||||||
'xattr_013_pos']
|
'xattr_013_pos']
|
||||||
tags = ['functional', 'xattr']
|
tags = ['functional', 'xattr']
|
||||||
|
|
||||||
[tests/functional/zvol/zvol_ENOSPC]
|
|
||||||
tests = ['zvol_ENOSPC_001_pos']
|
|
||||||
tags = ['functional', 'zvol', 'zvol_ENOSPC']
|
|
||||||
|
|
||||||
[tests/functional/zvol/zvol_cli]
|
|
||||||
tests = ['zvol_cli_001_pos', 'zvol_cli_002_pos', 'zvol_cli_003_neg']
|
|
||||||
tags = ['functional', 'zvol', 'zvol_cli']
|
|
||||||
|
|
||||||
[tests/functional/zvol/zvol_misc]
|
|
||||||
tests = ['zvol_misc_001_neg', 'zvol_misc_002_pos', 'zvol_misc_003_neg',
|
|
||||||
'zvol_misc_004_pos', 'zvol_misc_005_neg', 'zvol_misc_006_pos',
|
|
||||||
'zvol_misc_hierarchy', 'zvol_misc_rename_inuse', 'zvol_misc_snapdev',
|
|
||||||
'zvol_misc_volmode', 'zvol_misc_zil']
|
|
||||||
tags = ['functional', 'zvol', 'zvol_misc']
|
|
||||||
|
|
||||||
[tests/functional/zvol/zvol_swap]
|
|
||||||
tests = ['zvol_swap_001_pos', 'zvol_swap_002_pos', 'zvol_swap_003_pos',
|
|
||||||
'zvol_swap_004_pos', 'zvol_swap_005_pos', 'zvol_swap_006_pos']
|
|
||||||
tags = ['functional', 'zvol', 'zvol_swap']
|
|
||||||
|
|
||||||
[tests/functional/libzfs]
|
|
||||||
tests = ['many_fds', 'libzfs_input']
|
|
||||||
tags = ['functional', 'libzfs']
|
|
||||||
|
|
||||||
[tests/functional/log_spacemap]
|
|
||||||
tests = ['log_spacemap_import_logs']
|
|
||||||
pre =
|
|
||||||
post =
|
|
||||||
tags = ['functional', 'log_spacemap']
|
|
||||||
|
@ -155,9 +155,10 @@ class Output(object):
|
|||||||
class Cmd(object):
|
class Cmd(object):
|
||||||
verified_users = []
|
verified_users = []
|
||||||
|
|
||||||
def __init__(self, pathname, outputdir=None, timeout=None, user=None,
|
def __init__(self, pathname, identifier=None, outputdir=None,
|
||||||
tags=None):
|
timeout=None, user=None, tags=None):
|
||||||
self.pathname = pathname
|
self.pathname = pathname
|
||||||
|
self.identifier = identifier
|
||||||
self.outputdir = outputdir or 'BASEDIR'
|
self.outputdir = outputdir or 'BASEDIR'
|
||||||
"""
|
"""
|
||||||
The timeout for tests is measured in wall-clock time
|
The timeout for tests is measured in wall-clock time
|
||||||
@ -172,8 +173,10 @@ class Cmd(object):
|
|||||||
self.timeout = 60
|
self.timeout = 60
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return "Pathname: %s\nOutputdir: %s\nTimeout: %d\nUser: %s\n" % \
|
return "Pathname: %s\nIdentifier: %s\nOutputdir: %s\nTimeout: %d\n" \
|
||||||
(self.pathname, self.outputdir, self.timeout, self.user)
|
"User: %s\n" % \
|
||||||
|
(self.pathname, self.identifier, self.outputdir, self.timeout,
|
||||||
|
self.user)
|
||||||
|
|
||||||
def kill_cmd(self, proc, keyboard_interrupt=False):
|
def kill_cmd(self, proc, keyboard_interrupt=False):
|
||||||
"""
|
"""
|
||||||
@ -315,6 +318,9 @@ class Cmd(object):
|
|||||||
if self.reran is True:
|
if self.reran is True:
|
||||||
rer = ' (RERAN)'
|
rer = ' (RERAN)'
|
||||||
user = ' (run as %s)' % (self.user if len(self.user) else logname)
|
user = ' (run as %s)' % (self.user if len(self.user) else logname)
|
||||||
|
if self.identifier:
|
||||||
|
msga = 'Test (%s): %s%s ' % (self.identifier, self.pathname, user)
|
||||||
|
else:
|
||||||
msga = 'Test: %s%s ' % (self.pathname, user)
|
msga = 'Test: %s%s ' % (self.pathname, user)
|
||||||
msgb = '[%s] [%s]%s\n' % (self.result.runtime, self.result.result, rer)
|
msgb = '[%s] [%s]%s\n' % (self.result.runtime, self.result.result, rer)
|
||||||
pad = ' ' * (80 - (len(msga) + len(msgb)))
|
pad = ' ' * (80 - (len(msga) + len(msgb)))
|
||||||
@ -357,10 +363,10 @@ class Test(Cmd):
|
|||||||
props = ['outputdir', 'timeout', 'user', 'pre', 'pre_user', 'post',
|
props = ['outputdir', 'timeout', 'user', 'pre', 'pre_user', 'post',
|
||||||
'post_user', 'tags']
|
'post_user', 'tags']
|
||||||
|
|
||||||
def __init__(self, pathname, outputdir=None, timeout=None, user=None,
|
def __init__(self, pathname,
|
||||||
pre=None, pre_user=None, post=None, post_user=None,
|
pre=None, pre_user=None, post=None, post_user=None, tags=None,
|
||||||
tags=None):
|
**kwargs):
|
||||||
super(Test, self).__init__(pathname, outputdir, timeout, user)
|
super(Test, self).__init__(pathname, **kwargs)
|
||||||
self.pre = pre or ''
|
self.pre = pre or ''
|
||||||
self.pre_user = pre_user or ''
|
self.pre_user = pre_user or ''
|
||||||
self.post = post or ''
|
self.post = post or ''
|
||||||
@ -373,10 +379,10 @@ class Test(Cmd):
|
|||||||
pre_user = ' (as %s)' % (self.pre_user)
|
pre_user = ' (as %s)' % (self.pre_user)
|
||||||
if len(self.post_user):
|
if len(self.post_user):
|
||||||
post_user = ' (as %s)' % (self.post_user)
|
post_user = ' (as %s)' % (self.post_user)
|
||||||
return "Pathname: %s\nOutputdir: %s\nTimeout: %d\nPre: %s%s\nPost: " \
|
return "Pathname: %s\nIdentifier: %s\nOutputdir: %s\nTimeout: %d\n" \
|
||||||
"%s%s\nUser: %s\nTags: %s\n" % \
|
"Pre: %s%s\nPost: %s%s\nUser: %s\nTags: %s\n" % \
|
||||||
(self.pathname, self.outputdir, self.timeout, self.pre,
|
(self.pathname, self.identifier, self.outputdir, self.timeout,
|
||||||
pre_user, self.post, post_user, self.user, self.tags)
|
self.pre, pre_user, self.post, post_user, self.user, self.tags)
|
||||||
|
|
||||||
def verify(self):
|
def verify(self):
|
||||||
"""
|
"""
|
||||||
@ -406,13 +412,14 @@ class Test(Cmd):
|
|||||||
doesn't pass, skip this Test. Run the post script regardless.
|
doesn't pass, skip this Test. Run the post script regardless.
|
||||||
"""
|
"""
|
||||||
odir = os.path.join(self.outputdir, os.path.basename(self.pre))
|
odir = os.path.join(self.outputdir, os.path.basename(self.pre))
|
||||||
pretest = Cmd(self.pre, outputdir=odir, timeout=self.timeout,
|
pretest = Cmd(self.pre, identifier=self.identifier, outputdir=odir,
|
||||||
user=self.pre_user)
|
timeout=self.timeout, user=self.pre_user)
|
||||||
test = Cmd(self.pathname, outputdir=self.outputdir,
|
test = Cmd(self.pathname, identifier=self.identifier,
|
||||||
timeout=self.timeout, user=self.user)
|
outputdir=self.outputdir, timeout=self.timeout,
|
||||||
|
user=self.user)
|
||||||
odir = os.path.join(self.outputdir, os.path.basename(self.post))
|
odir = os.path.join(self.outputdir, os.path.basename(self.post))
|
||||||
posttest = Cmd(self.post, outputdir=odir, timeout=self.timeout,
|
posttest = Cmd(self.post, identifier=self.identifier, outputdir=odir,
|
||||||
user=self.post_user)
|
timeout=self.timeout, user=self.post_user)
|
||||||
|
|
||||||
cont = True
|
cont = True
|
||||||
if len(pretest.pathname):
|
if len(pretest.pathname):
|
||||||
@ -435,11 +442,8 @@ class Test(Cmd):
|
|||||||
class TestGroup(Test):
|
class TestGroup(Test):
|
||||||
props = Test.props + ['tests']
|
props = Test.props + ['tests']
|
||||||
|
|
||||||
def __init__(self, pathname, outputdir=None, timeout=None, user=None,
|
def __init__(self, pathname, tests=None, **kwargs):
|
||||||
pre=None, pre_user=None, post=None, post_user=None,
|
super(TestGroup, self).__init__(pathname, **kwargs)
|
||||||
tests=None, tags=None):
|
|
||||||
super(TestGroup, self).__init__(pathname, outputdir, timeout, user,
|
|
||||||
pre, pre_user, post, post_user, tags)
|
|
||||||
self.tests = tests or []
|
self.tests = tests or []
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
@ -448,10 +452,11 @@ class TestGroup(Test):
|
|||||||
pre_user = ' (as %s)' % (self.pre_user)
|
pre_user = ' (as %s)' % (self.pre_user)
|
||||||
if len(self.post_user):
|
if len(self.post_user):
|
||||||
post_user = ' (as %s)' % (self.post_user)
|
post_user = ' (as %s)' % (self.post_user)
|
||||||
return "Pathname: %s\nOutputdir: %s\nTests: %s\nTimeout: %s\n" \
|
return "Pathname: %s\nIdentifier: %s\nOutputdir: %s\nTests: %s\n" \
|
||||||
"Pre: %s%s\nPost: %s%s\nUser: %s\nTags: %s\n" % \
|
"Timeout: %s\nPre: %s%s\nPost: %s%s\nUser: %s\nTags: %s\n" % \
|
||||||
(self.pathname, self.outputdir, self.tests, self.timeout,
|
(self.pathname, self.identifier, self.outputdir, self.tests,
|
||||||
self.pre, pre_user, self.post, post_user, self.user, self.tags)
|
self.timeout, self.pre, pre_user, self.post, post_user,
|
||||||
|
self.user, self.tags)
|
||||||
|
|
||||||
def verify(self):
|
def verify(self):
|
||||||
"""
|
"""
|
||||||
@ -510,10 +515,10 @@ class TestGroup(Test):
|
|||||||
|
|
||||||
odir = os.path.join(self.outputdir, os.path.basename(self.pre))
|
odir = os.path.join(self.outputdir, os.path.basename(self.pre))
|
||||||
pretest = Cmd(self.pre, outputdir=odir, timeout=self.timeout,
|
pretest = Cmd(self.pre, outputdir=odir, timeout=self.timeout,
|
||||||
user=self.pre_user)
|
user=self.pre_user, identifier=self.identifier)
|
||||||
odir = os.path.join(self.outputdir, os.path.basename(self.post))
|
odir = os.path.join(self.outputdir, os.path.basename(self.post))
|
||||||
posttest = Cmd(self.post, outputdir=odir, timeout=self.timeout,
|
posttest = Cmd(self.post, outputdir=odir, timeout=self.timeout,
|
||||||
user=self.post_user)
|
user=self.post_user, identifier=self.identifier)
|
||||||
|
|
||||||
cont = True
|
cont = True
|
||||||
if len(pretest.pathname):
|
if len(pretest.pathname):
|
||||||
@ -524,7 +529,8 @@ class TestGroup(Test):
|
|||||||
for fname in self.tests:
|
for fname in self.tests:
|
||||||
test = Cmd(os.path.join(self.pathname, fname),
|
test = Cmd(os.path.join(self.pathname, fname),
|
||||||
outputdir=os.path.join(self.outputdir, fname),
|
outputdir=os.path.join(self.outputdir, fname),
|
||||||
timeout=self.timeout, user=self.user)
|
timeout=self.timeout, user=self.user,
|
||||||
|
identifier=self.identifier)
|
||||||
if cont:
|
if cont:
|
||||||
test.run(options.dryrun)
|
test.run(options.dryrun)
|
||||||
else:
|
else:
|
||||||
@ -605,7 +611,7 @@ class TestRun(object):
|
|||||||
|
|
||||||
def read(self, options):
|
def read(self, options):
|
||||||
"""
|
"""
|
||||||
Read in the specified runfile, and apply the TestRun properties
|
Read in the specified runfiles, and apply the TestRun properties
|
||||||
listed in the 'DEFAULT' section to our TestRun. Then read each
|
listed in the 'DEFAULT' section to our TestRun. Then read each
|
||||||
section, and apply the appropriate properties to the Test or
|
section, and apply the appropriate properties to the Test or
|
||||||
TestGroup. Properties from individual sections override those set
|
TestGroup. Properties from individual sections override those set
|
||||||
@ -613,8 +619,11 @@ class TestRun(object):
|
|||||||
verification, add it to the TestRun.
|
verification, add it to the TestRun.
|
||||||
"""
|
"""
|
||||||
config = configparser.RawConfigParser()
|
config = configparser.RawConfigParser()
|
||||||
if not len(config.read(options.runfile)):
|
parsed = config.read(options.runfiles)
|
||||||
fail("Coulnd't read config file %s" % options.runfile)
|
failed = options.runfiles - set(parsed)
|
||||||
|
if len(failed):
|
||||||
|
files = ' '.join(sorted(failed))
|
||||||
|
fail("Couldn't read config files: %s" % files)
|
||||||
|
|
||||||
for opt in TestRun.props:
|
for opt in TestRun.props:
|
||||||
if config.has_option('DEFAULT', opt):
|
if config.has_option('DEFAULT', opt):
|
||||||
@ -623,14 +632,18 @@ class TestRun(object):
|
|||||||
|
|
||||||
for section in config.sections():
|
for section in config.sections():
|
||||||
if 'tests' in config.options(section):
|
if 'tests' in config.options(section):
|
||||||
if os.path.isdir(section):
|
parts = section.split(':', 1)
|
||||||
pathname = section
|
sectiondir = parts[0]
|
||||||
elif os.path.isdir(os.path.join(options.testdir, section)):
|
identifier = parts[1] if len(parts) == 2 else None
|
||||||
pathname = os.path.join(options.testdir, section)
|
if os.path.isdir(sectiondir):
|
||||||
|
pathname = sectiondir
|
||||||
|
elif os.path.isdir(os.path.join(options.testdir, sectiondir)):
|
||||||
|
pathname = os.path.join(options.testdir, sectiondir)
|
||||||
else:
|
else:
|
||||||
pathname = section
|
pathname = sectiondir
|
||||||
|
|
||||||
testgroup = TestGroup(os.path.abspath(pathname))
|
testgroup = TestGroup(os.path.abspath(pathname),
|
||||||
|
identifier=identifier)
|
||||||
for prop in TestGroup.props:
|
for prop in TestGroup.props:
|
||||||
for sect in ['DEFAULT', section]:
|
for sect in ['DEFAULT', section]:
|
||||||
if config.has_option(sect, prop):
|
if config.has_option(sect, prop):
|
||||||
@ -873,32 +886,34 @@ def fail(retstr, ret=1):
|
|||||||
|
|
||||||
|
|
||||||
def options_cb(option, opt_str, value, parser):
|
def options_cb(option, opt_str, value, parser):
|
||||||
path_options = ['runfile', 'outputdir', 'template', 'testdir']
|
path_options = ['outputdir', 'template', 'testdir']
|
||||||
|
|
||||||
if option.dest == 'runfile' and '-w' in parser.rargs or \
|
if option.dest == 'runfiles' and '-w' in parser.rargs or \
|
||||||
option.dest == 'template' and '-c' in parser.rargs:
|
option.dest == 'template' and '-c' in parser.rargs:
|
||||||
fail('-c and -w are mutually exclusive.')
|
fail('-c and -w are mutually exclusive.')
|
||||||
|
|
||||||
if opt_str in parser.rargs:
|
if opt_str in parser.rargs:
|
||||||
fail('%s may only be specified once.' % opt_str)
|
fail('%s may only be specified once.' % opt_str)
|
||||||
|
|
||||||
if option.dest == 'runfile':
|
if option.dest == 'runfiles':
|
||||||
parser.values.cmd = 'rdconfig'
|
parser.values.cmd = 'rdconfig'
|
||||||
|
value = set(os.path.abspath(p) for p in value.split(','))
|
||||||
if option.dest == 'template':
|
if option.dest == 'template':
|
||||||
parser.values.cmd = 'wrconfig'
|
parser.values.cmd = 'wrconfig'
|
||||||
if option.dest == 'tags':
|
if option.dest == 'tags':
|
||||||
value = [x.strip() for x in value.split(',')]
|
value = [x.strip() for x in value.split(',')]
|
||||||
|
|
||||||
setattr(parser.values, option.dest, value)
|
|
||||||
if option.dest in path_options:
|
if option.dest in path_options:
|
||||||
setattr(parser.values, option.dest, os.path.abspath(value))
|
setattr(parser.values, option.dest, os.path.abspath(value))
|
||||||
|
else:
|
||||||
|
setattr(parser.values, option.dest, value)
|
||||||
|
|
||||||
|
|
||||||
def parse_args():
|
def parse_args():
|
||||||
parser = OptionParser()
|
parser = OptionParser()
|
||||||
parser.add_option('-c', action='callback', callback=options_cb,
|
parser.add_option('-c', action='callback', callback=options_cb,
|
||||||
type='string', dest='runfile', metavar='runfile',
|
type='string', dest='runfiles', metavar='runfiles',
|
||||||
help='Specify tests to run via config file.')
|
help='Specify tests to run via config files.')
|
||||||
parser.add_option('-d', action='store_true', default=False, dest='dryrun',
|
parser.add_option('-d', action='store_true', default=False, dest='dryrun',
|
||||||
help='Dry run. Print tests, but take no other action.')
|
help='Dry run. Print tests, but take no other action.')
|
||||||
parser.add_option('-g', action='store_true', default=False,
|
parser.add_option('-g', action='store_true', default=False,
|
||||||
@ -940,10 +955,10 @@ def parse_args():
|
|||||||
help='Number of times to run the test run.')
|
help='Number of times to run the test run.')
|
||||||
(options, pathnames) = parser.parse_args()
|
(options, pathnames) = parser.parse_args()
|
||||||
|
|
||||||
if not options.runfile and not options.template:
|
if not options.runfiles and not options.template:
|
||||||
options.cmd = 'runtests'
|
options.cmd = 'runtests'
|
||||||
|
|
||||||
if options.runfile and len(pathnames):
|
if options.runfiles and len(pathnames):
|
||||||
fail('Extraneous arguments.')
|
fail('Extraneous arguments.')
|
||||||
|
|
||||||
options.pathnames = [os.path.abspath(path) for path in pathnames]
|
options.pathnames = [os.path.abspath(path) for path in pathnames]
|
||||||
|
Loading…
Reference in New Issue
Block a user