diff options
author | Yousong Zhou <yszhou4tech@gmail.com> | 2014-12-16 15:00:12 +0800 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2014-12-18 12:38:15 +0100 |
commit | 9f405e2def19e764ec70ff4666c83ed76705511f (patch) | |
tree | 2aac3d08e03226eed30c623a7d1ed9bb0c2e641c | |
parent | 8c09e2aefc4cbedc403e21da6e8f596081aa89cc (diff) | |
download | uci-9f405e2def19e764ec70ff4666c83ed76705511f.tar.gz |
tests: add test coverage for uci list related commands.
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
-rw-r--r-- | test/references/add_list_changes.result | 4 | ||||
-rw-r--r-- | test/references/add_list_config.result | 6 | ||||
-rw-r--r-- | test/references/add_list_show.result | 3 | ||||
-rw-r--r-- | test/references/del_list_config.result | 5 | ||||
-rw-r--r-- | test/references/del_list_multiline_config.result | 4 | ||||
-rw-r--r-- | test/tests.d/080_list | 52 |
6 files changed, 74 insertions, 0 deletions
diff --git a/test/references/add_list_changes.result b/test/references/add_list_changes.result new file mode 100644 index 0000000..78e78b6 --- /dev/null +++ b/test/references/add_list_changes.result @@ -0,0 +1,4 @@ +list_test_config.SEC0='section' +list_test_config.SEC0.list0+='value0' +list_test_config.SEC0.list0+='"Hello +, world"' diff --git a/test/references/add_list_config.result b/test/references/add_list_config.result new file mode 100644 index 0000000..679cccc --- /dev/null +++ b/test/references/add_list_config.result @@ -0,0 +1,6 @@ + +config section 'SEC0' + list list0 'value0' + list list0 '"Hello +, world"' + diff --git a/test/references/add_list_show.result b/test/references/add_list_show.result new file mode 100644 index 0000000..3dd83cd --- /dev/null +++ b/test/references/add_list_show.result @@ -0,0 +1,3 @@ +list_test_config.SEC0=section +list_test_config.SEC0.list0='value0' '"Hello +, world"' diff --git a/test/references/del_list_config.result b/test/references/del_list_config.result new file mode 100644 index 0000000..8e66bbb --- /dev/null +++ b/test/references/del_list_config.result @@ -0,0 +1,5 @@ + +config section 'SEC0' + list list0 '"Hello +, world"' + diff --git a/test/references/del_list_multiline_config.result b/test/references/del_list_multiline_config.result new file mode 100644 index 0000000..fe67784 --- /dev/null +++ b/test/references/del_list_multiline_config.result @@ -0,0 +1,4 @@ + +config section 'SEC0' + list list0 'value0' + diff --git a/test/tests.d/080_list b/test/tests.d/080_list new file mode 100644 index 0000000..e0a910a --- /dev/null +++ b/test/tests.d/080_list @@ -0,0 +1,52 @@ +prepare_list_test() { + touch ${CONFIG_DIR}/list_test_config + ${UCI} set list_test_config.SEC0=section + ${UCI} add_list list_test_config.SEC0.list0=value0 + ${UCI} add_list list_test_config.SEC0.list0='"Hello +,'" world\"" +} +test_add_list_config() { + prepare_list_test + ${UCI} commit + assertSameFile "${REF_DIR}/add_list_config.result" "$CONFIG_DIR/list_test_config" +} + +test_add_list_get() { + # To maintain compatibility with current code, do not quote + # list values that do not contain blank spaces ("\x20\t\r\n") within it. + prepare_list_test + value_list_get=$(${UCI} get list_test_config.SEC0.list0) + assertEquals "$value_list_get" "value0 '\"Hello +, world\"'" +} + +test_add_list_show() { + prepare_list_test + value_list_show=$(${UCI} show list_test_config) + value_list_show_ref=$(cat "$REF_DIR/add_list_show.result") + assertEquals "$value_list_show" "$value_list_show_ref" +} + +test_add_list_changes() { + prepare_list_test + value_list_changes=$(${UCI} changes) + value_list_changes_ref=$(cat "$REF_DIR/add_list_changes.result") + assertEquals "$value_list_changes" "$value_list_changes_ref" +} + +test_del_list() { + prepare_list_test + ${UCI} commit + ${UCI} del_list list_test_config.SEC0.list0=value0 + ${UCI} commit + assertSameFile "${REF_DIR}/del_list_config.result" "$CONFIG_DIR/list_test_config" +} + +test_del_list_multiline() { + prepare_list_test + ${UCI} commit + ${UCI} del_list list_test_config.SEC0.list0='"Hello +,'' world"' + ${UCI} commit + assertSameFile "${REF_DIR}/del_list_multiline_config.result" "$CONFIG_DIR/list_test_config" +} |