Leon4gr45 commited on
Commit
802faac
·
verified ·
1 Parent(s): 7f57f39

Delete test/plausible/shields/page_test.exs with huggingface_hub

Browse files
Files changed (1) hide show
  1. test/plausible/shields/page_test.exs +0 -181
test/plausible/shields/page_test.exs DELETED
@@ -1,181 +0,0 @@
1
- defmodule Plausible.Shields.PageTest do
2
- use Plausible.DataCase
3
- import Plausible.Shields
4
-
5
- setup do
6
- site = insert(:site)
7
- {:ok, %{site: site}}
8
- end
9
-
10
- describe "add_page_rule/2" do
11
- test "no input", %{site: site} do
12
- assert {:error, changeset} = add_page_rule(site, %{})
13
- assert changeset.errors == [page_path: {"can't be blank", [validation: :required]}]
14
- refute changeset.valid?
15
- end
16
-
17
- test "no slash", %{site: site} do
18
- assert {:error, changeset} = add_page_rule(site, %{"page_path" => "test"})
19
- assert changeset.errors == [page_path: {"must start with /", []}]
20
- refute changeset.valid?
21
- end
22
-
23
- test "lengthy", %{site: site} do
24
- long = "/" <> :binary.copy("a", 251)
25
- assert {:error, changeset} = add_page_rule(site, %{"page_path" => long})
26
- assert [page_path: {"should be at most %{count} character(s)", _}] = changeset.errors
27
- refute changeset.valid?
28
- end
29
-
30
- test "double insert", %{site: site} do
31
- assert {:ok, _} = add_page_rule(site, %{"page_path" => "/test"})
32
- assert {:error, changeset} = add_page_rule(site, %{"page_path" => "/test"})
33
- refute changeset.valid?
34
-
35
- assert changeset.errors == [
36
- page_path:
37
- {"rule already exists",
38
- [
39
- {:constraint, :unique},
40
- {:constraint_name, "shield_rules_page_site_id_page_path_pattern_index"}
41
- ]}
42
- ]
43
- end
44
-
45
- test "equivalent rules are counted as dupes", %{site: site} do
46
- assert {:ok, _} = add_page_rule(site, %{"page_path" => "/test/*"})
47
- assert {:error, changeset} = add_page_rule(site, %{"page_path" => "/test/**"})
48
-
49
- assert changeset.errors == [
50
- page_path:
51
- {"rule already exists",
52
- [
53
- {:constraint, :unique},
54
- {:constraint_name, "shield_rules_page_site_id_page_path_pattern_index"}
55
- ]}
56
- ]
57
- end
58
-
59
- test "regex storage: wildcard", %{site: site} do
60
- assert {:ok, rule} = add_page_rule(site, %{"page_path" => "/test/*"})
61
- assert rule.page_path_pattern == "^/test/.*$"
62
- end
63
-
64
- test "regex storage: no wildcard", %{site: site} do
65
- assert {:ok, rule} = add_page_rule(site, %{"page_path" => "/test"})
66
- assert rule.page_path_pattern == "^/test$"
67
- end
68
-
69
- test "regex storage: escaping", %{site: site} do
70
- assert {:ok, rule} = add_page_rule(site, %{"page_path" => "/test/*/**/|+[0-9]"})
71
- assert rule.page_path_pattern == "^/test/.*/.*/\\|\\+\\[0\\-9\\]$"
72
- end
73
-
74
- test "over limit", %{site: site} do
75
- for i <- 1..maximum_page_rules() do
76
- assert {:ok, _} =
77
- add_page_rule(site, %{"page_path" => "/test/#{i}"})
78
- end
79
-
80
- assert count_page_rules(site) == maximum_page_rules()
81
-
82
- assert {:error, changeset} =
83
- add_page_rule(site, %{"page_path" => "/test/31"})
84
-
85
- refute changeset.valid?
86
- assert changeset.errors == [page_path: {"maximum reached", []}]
87
- end
88
-
89
- test "with added_by", %{site: site} do
90
- assert {:ok, rule} =
91
- add_page_rule(site, %{"page_path" => "/test"},
92
- added_by: build(:user, name: "Joe", email: "joe@example.com")
93
- )
94
-
95
- assert rule.added_by == "Joe <joe@example.com>"
96
- end
97
-
98
- test "ignores site_id supplied in params", %{site: site} do
99
- victim = insert(:site)
100
- assert {:ok, rule} = add_page_rule(site, %{"page_path" => "/test", "site_id" => victim.id})
101
- assert rule.site_id == site.id
102
- assert count_page_rules(victim) == 0
103
- end
104
- end
105
-
106
- describe "page pattern matching" do
107
- test "no wildcard", %{site: site} do
108
- assert {:ok, _} = add_page_rule(site, %{"page_path" => "/test"})
109
- assert page_blocked?(site, "/test")
110
- refute page_blocked?(site, "/test/hello")
111
- refute page_blocked?(site, "test")
112
- end
113
-
114
- test "wildcard", %{site: site} do
115
- assert {:ok, _} = add_page_rule(site, %{"page_path" => "/test/*"})
116
- refute page_blocked?(site, "/test")
117
- assert page_blocked?(site, "/test/")
118
- assert page_blocked?(site, "/test/hello")
119
- refute page_blocked?(site, "test")
120
- refute page_blocked?(site, "/testing")
121
- end
122
- end
123
-
124
- describe "remove_page_rule/2" do
125
- test "is idempontent", %{site: site} do
126
- {:ok, rule} = add_page_rule(site, %{"page_path" => "/test"})
127
- assert remove_page_rule(site, rule.id) == :ok
128
- refute Repo.get(Plausible.Shield.PageRule, rule.id)
129
- assert remove_page_rule(site, rule.id) == :ok
130
- end
131
- end
132
-
133
- describe "list_page_rules/1" do
134
- test "empty", %{site: site} do
135
- assert(list_page_rules(site) == [])
136
- end
137
-
138
- @tag :slow
139
- test "many", %{site: site} do
140
- {:ok, %{id: id1}} = add_page_rule(site, %{"page_path" => "/test1"})
141
- :timer.sleep(1000)
142
- {:ok, %{id: id2}} = add_page_rule(site, %{"page_path" => "/test2"})
143
- assert [%{id: ^id2}, %{id: ^id1}] = list_page_rules(site)
144
- end
145
- end
146
-
147
- describe "count_page_rules/1" do
148
- test "counts", %{site: site} do
149
- assert count_page_rules(site) == 0
150
- {:ok, _} = add_page_rule(site, %{"page_path" => "/test1"})
151
- assert count_page_rules(site) == 1
152
- {:ok, _} = add_page_rule(site, %{"page_path" => "/test2"})
153
- assert count_page_rules(site) == 2
154
- end
155
- end
156
-
157
- describe "Page Rules" do
158
- test "end to end", %{site: site} do
159
- site2 = insert(:site)
160
-
161
- assert count_page_rules(site.id) == 0
162
- assert list_page_rules(site.id) == []
163
-
164
- assert {:ok, rule} =
165
- add_page_rule(site.id, %{
166
- "page_path" => "/test"
167
- })
168
-
169
- add_page_rule(site2, %{"page_path" => "/test"})
170
-
171
- assert count_page_rules(site) == 1
172
- assert [%{id: rule_id}] = list_page_rules(site)
173
- assert rule.id == rule_id
174
- assert rule.page_path == "/test"
175
- assert rule.action == :deny
176
- refute rule.from_cache?
177
- assert page_blocked?(site, "/test")
178
- refute page_blocked?(site, "/testing")
179
- end
180
- end
181
- end