mirror of
https://github.com/samsonjs/rack-attack.git
synced 2026-04-26 14:57:47 +00:00
Acceptance test ability to subscribe to blocking events
This commit is contained in:
parent
7435d4da34
commit
21fe32b895
1 changed files with 20 additions and 0 deletions
|
|
@ -18,4 +18,24 @@ describe "#blocklist" do
|
||||||
|
|
||||||
assert_equal 200, last_response.status
|
assert_equal 200, last_response.status
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "notifies when the request is blocked" do
|
||||||
|
notification_matched = nil
|
||||||
|
notification_type = nil
|
||||||
|
|
||||||
|
ActiveSupport::Notifications.subscribe("rack.attack") do |_name, _start, _finish, _id, request|
|
||||||
|
notification_matched = request.env["rack.attack.matched"]
|
||||||
|
notification_type = request.env["rack.attack.match_type"]
|
||||||
|
end
|
||||||
|
|
||||||
|
get "/", {}, "REMOTE_ADDR" => "5.6.7.8"
|
||||||
|
|
||||||
|
assert_nil notification_matched
|
||||||
|
assert_nil notification_type
|
||||||
|
|
||||||
|
get "/", {}, "REMOTE_ADDR" => "1.2.3.4"
|
||||||
|
|
||||||
|
assert_equal "block 1.2.3.4", notification_matched
|
||||||
|
assert_equal :blocklist, notification_type
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue