TS_HELPER_LIBFDISK_SCRIPT_FUZZ="${ts_helpersdir}test_fdisk_script_fuzz"
TS_HELPER_LIBMOUNT_LOCK="${ts_helpersdir}test_mount_lock"
TS_HELPER_LIBMOUNT_OPTSTR="${ts_helpersdir}test_mount_optstr"
+TS_HELPER_LIBMOUNT_OPTLIST="${ts_helpersdir}test_mount_optlist"
TS_HELPER_LIBMOUNT_TABDIFF="${ts_helpersdir}test_mount_tab_diff"
TS_HELPER_LIBMOUNT_TAB="${ts_helpersdir}test_mount_tab"
TS_HELPER_LIBMOUNT_UPDATE="${ts_helpersdir}test_mount_tab_update"
--- /dev/null
+#01 [ unknown ] name:'aaa', value:'(null)'
+#02 [ unknown ] name:'bbb', value:'BBB'
+#03 [ unknown ] name:'context', value:'foo,bar,gogo'
+#04 [ unknown ] name:'ccc', value:'(null)'
+#05 [ unknown ] name:'ddd', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'aaa', value:'(null)'
+#02 [ unknown ] name:'bbb', value:'BBB'
+#03 [ unknown ] name:'ccc', value:'(null)'
+#04 [ unknown ] name:'ddd', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'aaa', value:'(null)'
+#02 [ unknown ] name:'bbb', value:'BBB'
+#03 [ unknown ] name:'ccc', value:'(null)'
+#04 [ unknown ] name:'ddd', value:'DDD'
--- /dev/null
+Default: rw,aaa,bbb=BBB,ccc
+All: rw,aaa,bbb=BBB,ccc
+Unknown: aaa,bbb=BBB,ccc
+Helpers: rw,aaa,bbb=BBB,ccc
--- /dev/null
+0x00000008
--- /dev/null
+0x0000000c
--- /dev/null
+Default: rw,aaa,bbb=BBB,ccc,defaults
+All: rw,aaa,bbb=BBB,ccc,defaults
+Unknown: aaa,bbb=BBB,ccc
+Helpers: rw,aaa,bbb=BBB,ccc
--- /dev/null
+Default: rw,noexec [0x00000008] (in linux map)
+Default: rw,noexec,noauto,user,defaults
+All: rw,noexec,noauto,user,defaults
+Unknown: (null)
+Helpers: rw,noexec,user
--- /dev/null
+Default: noauto,user,defaults [0x0000000c] (in user map)
+Default: rw,noexec,noauto,user,defaults
+All: rw,noexec,noauto,user,defaults
+Unknown: (null)
+Helpers: rw,noexec,user
--- /dev/null
+Default: rw,aaa,bbb=BBB,ccc
+All: rw,aaa,bbb=BBB,ccc
+Unknown: aaa,bbb=BBB,ccc
+Helpers: rw,aaa,bbb=BBB,ccc
--- /dev/null
+#01 [ unknown ] name:'ddd', value:'(null)'
+#02 [ unknown ] name:'aaa', value:'(null)'
+#03 [ unknown ] name:'bbb', value:'BBB'
+#04 [ unknown ] name:'ccc', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'ddd', value:'(null)'
+#02 [ unknown ] name:'aaa', value:'(null)'
+#03 [ unknown ] name:'bbb', value:'BBB'
+#04 [ unknown ] name:'ccc', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'ddd', value:'(null)'
+#02 [ unknown ] name:'eee', value:'EEE'
+#03 [ unknown ] name:'fff', value:'(null)'
+#04 [ unknown ] name:'aaa', value:'(null)'
+#05 [ unknown ] name:'bbb', value:'BBB'
+#06 [ unknown ] name:'ccc', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'ddd', value:'DDD'
+#02 [ unknown ] name:'aaa', value:'(null)'
+#03 [ unknown ] name:'bbb', value:'BBB'
+#04 [ unknown ] name:'ccc', value:'(null)'
--- /dev/null
+
+Usage:
+ test_mount_optlist <test> [testoptions]
+Tests:
+ --append-str <list> <str> [linux|user] append to the list
+ --prepend-str <list> <str> [linux|user] prepend to the list
+ --set-str <list> <str> [linux|user] set to the list
+ --append-flg <list> <flg> linux|user append to the list
+ --set-flg <list> <flg> linux|user set to the list
+ --get-str <list> [linux|user] all options in string
+ --get-flg <list> linux|user all options by flags
+
--- /dev/null
+
+Usage:
+ test_mount_optlist <test> [testoptions]
+Tests:
+ --append-str <list> <str> [linux|user] append to the list
+ --prepend-str <list> <str> [linux|user] prepend to the list
+ --set-str <list> <str> [linux|user] set to the list
+ --append-flg <list> <flg> linux|user append to the list
+ --set-flg <list> <flg> linux|user set to the list
+ --get-str <list> [linux|user] all options in string
+ --get-flg <list> linux|user all options by flags
+
--- /dev/null
+
+Usage:
+ test_mount_optlist <test> [testoptions]
+Tests:
+ --append-str <list> <str> [linux|user] append to the list
+ --prepend-str <list> <str> [linux|user] prepend to the list
+ --set-str <list> <str> [linux|user] set to the list
+ --append-flg <list> <flg> linux|user append to the list
+ --set-flg <list> <flg> linux|user set to the list
+ --get-str <list> [linux|user] all options in string
+ --get-flg <list> linux|user all options by flags
+
--- /dev/null
+
+Usage:
+ test_mount_optlist <test> [testoptions]
+Tests:
+ --append-str <list> <str> [linux|user] append to the list
+ --prepend-str <list> <str> [linux|user] prepend to the list
+ --set-str <list> <str> [linux|user] set to the list
+ --append-flg <list> <flg> linux|user append to the list
+ --set-flg <list> <flg> linux|user set to the list
+ --get-str <list> [linux|user] all options in string
+ --get-flg <list> linux|user all options by flags
+
--- /dev/null
+#01 [ unknown ] name:'new', value:'(null)'
+#02 [ unknown ] name:'data', value:'(null)'
+#03 [ unknown ] name:'for', value:'(null)'
+#04 [ unknown ] name:'list', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'bbb', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'bbb', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'aaa', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'aaa', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'ccc', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'ccc', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'bbb', value:'(null)'
--- /dev/null
+#01 [ unknown ] name:'bbb', value:'(null)'
--- /dev/null
+result: >ddd,eee=EEE,fff,aaa,bbb=BBB,ccc<
--- /dev/null
+#!/bin/bash
+
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="${0%/*}/../.."
+TS_DESC="options string"
+
+. "$TS_TOPDIR"/functions.sh
+ts_init "$*"
+
+ts_check_test_command $TS_HELPER_LIBMOUNT_OPTLIST
+
+TESTPROG="$TS_HELPER_LIBMOUNT_OPTLIST"
+
+ts_init_subtest "append"
+ts_run $TESTPROG --append-str "aaa,bbb=BBB,context=\"foo,bar,gogo\",ccc" "ddd" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "append-value"
+ts_run $TESTPROG --append-str "aaa,bbb=BBB,ccc" "ddd=DDD" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "append-empty-value"
+ts_run $TESTPROG --append-str "aaa,bbb=BBB,ccc" "ddd=" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "prepend"
+ts_run $TESTPROG --prepend-str "aaa,bbb=BBB,ccc" "ddd" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "prepend-list"
+ts_run $TESTPROG --prepend-str "aaa,bbb=BBB,ccc" "ddd,eee=EEE,fff" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "prepend-value"
+ts_run $TESTPROG --prepend-str "aaa,bbb=BBB,ccc" "ddd=DDD" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "prepend-empty-value"
+ts_run $TESTPROG --prepend-str "aaa,bbb=BBB,ccc" "ddd=" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "set"
+ts_run $TESTPROG --set-str "aaa,bbb=BBB,ccc" "new,data,for,list" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "get-str"
+ts_run $TESTPROG --get-str "aaa,bbb=BBB,ccc,defaults" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "get-str-linux"
+ts_run $TESTPROG --get-str "noexec,noauto,user,defaults" linux &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "get-str-user"
+ts_run $TESTPROG --get-str "noexec,noauto,user,defaults" user &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "get-flg-linux"
+ts_run $TESTPROG --get-flg "noexec,noauto,user,defaults" linux &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "get-flg-user"
+ts_run $TESTPROG --get-flg "noexec,noauto,user,defaults" user &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_finalize
. "$TS_TOPDIR"/functions.sh
ts_init "$*"
-TESTPROG="$TS_HELPER_LIBMOUNT_OPTSTR"
+ts_check_test_command $TS_HELPER_LIBMOUNT_OPTSTR
-[ -x $TESTPROG ] || ts_skip "test not compiled"
+TESTPROG="$TS_HELPER_LIBMOUNT_OPTSTR"
ts_init_subtest "append"
ts_run $TESTPROG --append "aaa,bbb=BBB,context=\"foo,bar,gogo\",ccc" "ddd" &> $TS_OUTPUT
ts_run $TESTPROG --prepend "aaa,bbb=BBB,ccc" "ddd" &> $TS_OUTPUT
ts_finalize_subtest
+ts_init_subtest "prepend-list"
+ts_run $TESTPROG --prepend "aaa,bbb=BBB,ccc" "ddd,eee=EEE,fff" &> $TS_OUTPUT
+ts_finalize_subtest
+
ts_init_subtest "prepend-value"
ts_run $TESTPROG --prepend "aaa,bbb=BBB,ccc" "ddd" "DDD" &> $TS_OUTPUT
ts_finalize_subtest