提交 dfa27c0c 作者: Juan Benet

Merge pull request #1623 from rht/fix-check-api-test

Fix and refactor daemon api test
...@@ -30,20 +30,44 @@ test_client_must_fail() { ...@@ -30,20 +30,44 @@ test_client_must_fail() {
test_cmp expected_err actual_err test_cmp expected_err actual_err
} }
test_client_suite() {
state="$1"
cfg_success="$2"
diff_success="$3"
# must always work
test_expect_success "client should work $state" '
test_client
'
# must always err
test_expect_success "client --api unreachable should err $state" '
test_client_must_fail --api "$api_unreachable"
'
if [ "$cfg_success" = true ]; then
test_expect_success "client --api fromcfg should work $state" '
test_client --api "$api_fromcfg"
'
else
test_expect_success "client --api fromcfg should err $state" '
test_client_must_fail --api "$api_fromcfg"
'
fi
if [ "$diff_success" = true ]; then
test_expect_success "client --api different should work $state" '
test_client --api "$api_different"
'
else
test_expect_success "client --api different should err $state" '
test_client_must_fail --api "$api_different"
'
fi
}
# first, test things without daemon, without /api file # first, test things without daemon, without /api file
test_client_suite "(daemon off, no --api, no /api file)" false false
test_expect_success "client should work (daemon off, no /api file, no --api)" '
test_client
'
test_expect_success "client --api fromcfg should err (daemon off, no /api file)" '
test_client_must_fail --api "$api_fromcfg"
'
test_expect_success "client --api unreachable should err (daemon off, no /api file)" '
test_client_must_fail --api "$api_unreachable"
'
# then, test things with daemon, with /api file # then, test things with daemon, with /api file
...@@ -58,33 +82,13 @@ test_expect_success "api file looks good" ' ...@@ -58,33 +82,13 @@ test_expect_success "api file looks good" '
test_cmp expected .ipfs/api test_cmp expected .ipfs/api
' '
test_expect_success "client should work (daemon on, /api file, no --api)" ' test_client_suite "(daemon on, no --api, /api file from cfg)" true false
test_client
'
test_expect_success "client --api fromcfg should work (daemon used cfg) (daemon, /api file)" '
test_client --api "$api_fromcfg"
'
test_expect_success "client --api unreachable should err (daemon, /api file)" '
test_client_must_fail --api "$api_unreachable"
'
# then, test things without daemon, with /api file # then, test things without daemon, with /api file
test_kill_ipfs_daemon test_kill_ipfs_daemon
test_expect_success "client should work (daemon off, /api file, no --api)" ' test_client_suite "(daemon off, no --api, /api file from cfg)" false false
test_client
'
test_expect_success "client --api fromcfg should err (daemon off, /api file)" '
test_client_must_fail --api "$api_fromcfg"
'
test_expect_success "client --api unreachable should err (daemon, /api file)" '
test_client_must_fail --api "$api_unreachable"
'
# then, test things with daemon --api $api_different, with /api file # then, test things with daemon --api $api_different, with /api file
...@@ -98,40 +102,12 @@ test_expect_success "'ipfs daemon' --api option works" ' ...@@ -98,40 +102,12 @@ test_expect_success "'ipfs daemon' --api option works" '
test_cmp expected .ipfs/api test_cmp expected .ipfs/api
' '
test_expect_success "client should work (daemon on, /api file (different), no --api)" ' test_client_suite "(daemon on, /api file different)" false true
test_client
'
test_expect_success "client --api different should work (daemon on, /api file (different))" '
test_client --api "$api_different"
'
test_expect_success "client --api fromcfg should err (daemon on, /api file (different))" '
test_client_must_fail --api "$api_fromcfg"
'
test_expect_success "client --api unreachable should err (daemon, /api file)" '
test_client_must_fail --api "$api_unreachable"
'
# then, test things with daemon off, with /api file, for good measure. # then, test things with daemon off, with /api file, for good measure.
test_kill_ipfs_daemon test_kill_ipfs_daemon
test_expect_success "client should work (daemon off, /api file (different), no --api)" ' test_client_suite "(daemon off, /api file different)" false false
test_client
'
test_expect_success "client --api different should work (daemon on, /api file (different))" '
test_client_must_fail --api "$api_different"
'
test_expect_success "client --api fromcfg should err (daemon on, /api file (different))" '
test_client_must_fail --api "$api_fromcfg"
'
test_expect_success "client --api unreachable should err (daemon, /api file)" '
test_client_must_fail --api "$api_unreachable"
'
test_done test_done
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论