summaryrefslogtreecommitdiff
path: root/test/elixir/test/attachment_names_test.exs
diff options
context:
space:
mode:
Diffstat (limited to 'test/elixir/test/attachment_names_test.exs')
-rw-r--r--test/elixir/test/attachment_names_test.exs98
1 files changed, 0 insertions, 98 deletions
diff --git a/test/elixir/test/attachment_names_test.exs b/test/elixir/test/attachment_names_test.exs
deleted file mode 100644
index 66596c865..000000000
--- a/test/elixir/test/attachment_names_test.exs
+++ /dev/null
@@ -1,98 +0,0 @@
-defmodule AttachmentNamesTest do
- use CouchTestCase
-
- @moduletag :attachments
- @moduletag kind: :single_node
-
- @good_doc """
- {
- "_id": "good_doc",
- "_attachments": {
- "Kолян.txt": {
- "content_type": "application/octet-stream",
- "data": "VGhpcyBpcyBhIGJhc2U2NCBlbmNvZGVkIHRleHQ="
- }
- }
- }
- """
-
- @bin_att_doc %{
- _id: "bin_doc",
- _attachments: %{
- footxt: %{
- content_type: "text/plain",
- data: "VGhpcyBpcyBhIGJhc2U2NCBlbmNvZGVkIHRleHQ="
- }
- }
- }
-
- @bin_data "JHAPDO*AU£PN ){(3u[d 93DQ9¡€])} ææøo'∂ƒæ≤çæππ•¥∫¶®#†π¶®¥π€ª®˙π8np"
-
- @leading_underscores_att """
- {
- "_id": "bin_doc2",
- "_attachments": {
- "_foo.txt": {
- "content_type": "text/plain",
- "data": "VGhpcyBpcyBhIGJhc2U2NCBlbmNvZGVkIHRleHQ="
- }
- }
- }
- """
-
- @moduledoc """
- Test CouchDB attachment names
- This is a port of the attachment_names.js suite
- """
-
- @tag :with_db
- test "saves attachment names successfully", context do
- db_name = context[:db_name]
- filename = URI.encode("Kолян.txt", &URI.char_unreserved?(&1))
- resp = Couch.post("/#{db_name}", body: @good_doc)
- msg = "Should return 201-Created"
- assert resp.status_code in [201, 202], msg
-
- resp = Couch.get("/#{db_name}/good_doc/#{filename}")
- assert resp.body == "This is a base64 encoded text"
- assert resp.headers["Content-Type"] == "application/octet-stream"
- assert resp.headers["Etag"] == ~s("aEI7pOYCRBLTRQvvqYrrJQ==")
-
- resp = Couch.post("/#{db_name}", body: @bin_att_doc)
- assert(resp.status_code == 201)
-
- # standalone docs
- resp =
- Couch.put(
- "/#{db_name}/bin_doc3/attachmenttxt",
- body: @bin_data,
- headers: ["Content-Type": "text/plain;charset=utf-8"]
- )
-
- assert(resp.status_code == 201)
-
- # bulk docs
- docs = %{
- docs: [@bin_att_doc]
- }
-
- resp =
- Couch.post(
- "/#{db_name}/_bulk_docs",
- body: docs
- )
-
- assert(resp.status_code == 201)
-
- resp =
- Couch.put(
- "/#{db_name}/bin_doc2",
- body: @leading_underscores_att
- )
-
- assert resp.status_code == 400
-
- assert resp.body["reason"] ==
- "Attachment name '_foo.txt' starts with prohibited character '_'"
- end
-end