diff --git a/tests/dl-out.expect b/tests/dl-out.expect new file mode 100644 index 00000000..221be93f --- /dev/null +++ b/tests/dl-out.expect @@ -0,0 +1,2 @@ +serve directory . on http://127.0.0.1:8083 + 0 0 52428800 data2 diff --git a/tests/download_chunked.sh b/tests/download_chunked.sh new file mode 100755 index 00000000..f28d8234 --- /dev/null +++ b/tests/download_chunked.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env sh + +SERVER=$1 +"$SERVER" . -p 8083 & + +sleep 0.1 + +curl -N 'http://localhost:8083/foo_50' -o data2 \ + -H 'Tranfer-encoding: chunked' + +kill %1 +wc data2 diff --git a/tests/dune b/tests/dune index 6c270bbd..37621ada 100644 --- a/tests/dune +++ b/tests/dune @@ -29,3 +29,14 @@ (rule (alias runtest) (action (diff upload-out.expect upload-out))) + +(rule + (targets dl-out) + (deps (:bin ../src/bin/http_of_dir.exe) foo_50) + (locks /port) + (action (with-stdout-to %{targets} + (run ./download_chunked.sh %{bin})))) + +(rule + (alias runtest) + (action (diff dl-out.expect dl-out)))