From 90b6490a35a1ddd5f5b1a898d6c1a81b0996d6b6 Mon Sep 17 00:00:00 2001 From: rht Date: Mon, 17 Aug 2015 13:47:14 +0700 Subject: [PATCH] Add test for readonly gateway api sanitation License: MIT Signed-off-by: rht --- test/sharness/t0110-gateway.sh | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/test/sharness/t0110-gateway.sh b/test/sharness/t0110-gateway.sh index 8bfcfbf0d..944137668 100755 --- a/test/sharness/t0110-gateway.sh +++ b/test/sharness/t0110-gateway.sh @@ -92,8 +92,13 @@ test_expect_success "log output looks good" ' ' # test ipfs readonly api + +test_curl_gateway_api() { + curl -sfo actual "http://127.0.0.1:$port/api/v0/$1" +} + test_expect_success "get IPFS directory file through readonly API succeeds" ' - curl -sfo actual "http://127.0.0.1:$port/api/v0/cat?arg=$HASH2/test" + test_curl_gateway_api "cat?arg=$HASH2/test" ' test_expect_success "get IPFS directory file through readonly API output looks good" ' @@ -101,7 +106,13 @@ test_expect_success "get IPFS directory file through readonly API output looks g ' test_expect_success "refs IPFS directory file through readonly API succeeds" ' - curl -sfo actual "http://127.0.0.1:$port/api/v0/refs?arg=$HASH2/test" + test_curl_gateway_api "refs?arg=$HASH2/test" +' + +test_expect_success "test gateway api is sanitized" ' +for cmd in "add" "block/put" "bootstrap" "config" "dht" "diag" "dns" "get" "id" "mount" "name/publish" "object/put" "object/new" "object/patch" "pin" "ping" "refs/local" "repo" "resolve" "stats" "swarm" "tour" "file" "update" "version" "bitswap"; do + test_curl_resp_http_code "http://127.0.0.1:$port/api/v0/$cmd" "HTTP/1.1 404 Not Found" + done ' test_kill_ipfs_daemon