summaryrefslogtreecommitdiff
path: root/test/plugs
diff options
context:
space:
mode:
authorIvan Tashkinov <ivant.business@gmail.com>2019-03-15 17:11:00 +0300
committerIvan Tashkinov <ivant.business@gmail.com>2019-03-15 17:11:00 +0300
commit273905744242b013ba9736ff7e1415a0499022d1 (patch)
tree146f5ad5428130dce0076ea9f6398035d7ac88f6 /test/plugs
parentaacbf0f57053786533df045125dee93ace0daa93 (diff)
parent41fc67aa4993c119dae82578df7309d3999ac47a (diff)
downloadpleroma-273905744242b013ba9736ff7e1415a0499022d1.tar.gz
pleroma-273905744242b013ba9736ff7e1415a0499022d1.zip
Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
Diffstat (limited to 'test/plugs')
-rw-r--r--test/plugs/uploaded_media_plug_test.exs43
1 files changed, 43 insertions, 0 deletions
diff --git a/test/plugs/uploaded_media_plug_test.exs b/test/plugs/uploaded_media_plug_test.exs
new file mode 100644
index 000000000..49cf5396a
--- /dev/null
+++ b/test/plugs/uploaded_media_plug_test.exs
@@ -0,0 +1,43 @@
+# Pleroma: A lightweight social networking server
+# Copyright © 2017-2018 Pleroma Authors <https://pleroma.social/>
+# SPDX-License-Identifier: AGPL-3.0-only
+
+defmodule Pleroma.Web.UploadedMediaPlugTest do
+ use Pleroma.Web.ConnCase
+ alias Pleroma.Upload
+
+ defp upload_file(context) do
+ Pleroma.DataCase.ensure_local_uploader(context)
+ File.cp!("test/fixtures/image.jpg", "test/fixtures/image_tmp.jpg")
+
+ file = %Plug.Upload{
+ content_type: "image/jpg",
+ path: Path.absname("test/fixtures/image_tmp.jpg"),
+ filename: "nice_tf.jpg"
+ }
+
+ {:ok, data} = Upload.store(file)
+ [%{"href" => attachment_url} | _] = data["url"]
+ [attachment_url: attachment_url]
+ end
+
+ setup_all :upload_file
+
+ test "does not send Content-Disposition header when name param is not set", %{
+ attachment_url: attachment_url
+ } do
+ conn = get(build_conn(), attachment_url)
+ refute Enum.any?(conn.resp_headers, &(elem(&1, 0) == "content-disposition"))
+ end
+
+ test "sends Content-Disposition header when name param is set", %{
+ attachment_url: attachment_url
+ } do
+ conn = get(build_conn(), attachment_url <> "?name=\"cofe\".gif")
+
+ assert Enum.any?(
+ conn.resp_headers,
+ &(&1 == {"content-disposition", "filename=\"\\\"cofe\\\".gif\""})
+ )
+ end
+end