diff --git a/fixtures/test-server-mime-blacklist/test.sh b/fixtures/test-server-mime-blacklist/test.sh index 2c616ab..bdd9269 100755 --- a/fixtures/test-server-mime-blacklist/test.sh +++ b/fixtures/test-server-mime-blacklist/test.sh @@ -16,6 +16,6 @@ run_test() { } teardown() { - rm file* + rm file.* rm -r upload } diff --git a/fixtures/test-server-mime-override/config.toml b/fixtures/test-server-mime-override/config.toml new file mode 100644 index 0000000..4c37e9b --- /dev/null +++ b/fixtures/test-server-mime-override/config.toml @@ -0,0 +1,13 @@ +[server] +address="127.0.0.1:8000" +max_content_length="10MB" +upload_path="./upload" + +[paste] +random_url = { enabled = true, type = "petname", words = 2, separator = "-" } +default_extension = "txt" +duplicate_files = true +mime_override = [ + { mime = "application/x-shockwave-flash", regex = "^.*\\.txt$" }, + { mime = "image/gif", regex = "^.*\\.tar$" }, +] diff --git a/fixtures/test-server-mime-override/test.sh b/fixtures/test-server-mime-override/test.sh new file mode 100755 index 0000000..63f60ce --- /dev/null +++ b/fixtures/test-server-mime-override/test.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash + +content="test" + +setup() { + for ext in "txt" "tar" "png"; do + echo "$content" > "file.$ext" + done +} + +run_test() { + file_url=$(curl -s -F "file=@file.txt" localhost:8000) + test "application/x-shockwave-flash" = "$(curl -s --write-out %{content_type} $file_url | tail -n 1)" + + file_url=$(curl -s -F "file=@file.tar" localhost:8000) + test "image/gif" = "$(curl -s --write-out %{content_type} $file_url | tail -n 1)" + + file_url=$(curl -s -F "file=@file.png" localhost:8000) + test "image/png" = "$(curl -s --write-out %{content_type} $file_url | tail -n 1)" + test "$content" = "$(curl -s $file_url)" +} + +teardown() { + rm file.* + rm -r upload +}