summaryrefslogtreecommitdiff
path: root/test/object/containment_test.exs
diff options
context:
space:
mode:
authorSachin Joshi <satchin.joshi@gmail.com>2019-07-15 21:30:56 +0545
committerSachin Joshi <satchin.joshi@gmail.com>2019-07-15 21:30:56 +0545
commit1d906ffa82633af21233c3030fbe2d127b5b77f9 (patch)
treef49175e422b68bee331d437c0dac76ccb5159ed3 /test/object/containment_test.exs
parentf8e3ae61545de45ce4dd395471149ed1e71e0343 (diff)
parent6aa5b39837b943a7a8fd5c6d1d617c74e933e088 (diff)
downloadpleroma-1d906ffa82633af21233c3030fbe2d127b5b77f9.tar.gz
pleroma-1d906ffa82633af21233c3030fbe2d127b5b77f9.zip
Merge branch 'develop' into match-file-name
# Conflicts: # lib/pleroma/web/media_proxy/media_proxy_controller.ex
Diffstat (limited to 'test/object/containment_test.exs')
-rw-r--r--test/object/containment_test.exs30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/object/containment_test.exs b/test/object/containment_test.exs
index 1beed6236..61cd1b412 100644
--- a/test/object/containment_test.exs
+++ b/test/object/containment_test.exs
@@ -68,4 +68,34 @@ defmodule Pleroma.Object.ContainmentTest do
"[error] Could not decode user at fetch https://n1u.moe/users/rye, {:error, :error}"
end
end
+
+ describe "containment of children" do
+ test "contain_child() catches spoofing attempts" do
+ data = %{
+ "id" => "http://example.com/whatever",
+ "type" => "Create",
+ "object" => %{
+ "id" => "http://example.net/~alyssa/activities/1234",
+ "attributedTo" => "http://example.org/~alyssa"
+ },
+ "actor" => "http://example.com/~bob"
+ }
+
+ :error = Containment.contain_child(data)
+ end
+
+ test "contain_child() allows correct origins" do
+ data = %{
+ "id" => "http://example.org/~alyssa/activities/5678",
+ "type" => "Create",
+ "object" => %{
+ "id" => "http://example.org/~alyssa/activities/1234",
+ "attributedTo" => "http://example.org/~alyssa"
+ },
+ "actor" => "http://example.org/~alyssa"
+ }
+
+ :ok = Containment.contain_child(data)
+ end
+ end
end