2022-05-07 20:08:51 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module ContentSecurityPolicyHelpers
|
2023-01-13 00:05:48 +05:30
|
|
|
# Expecting 2 calls to current_content_security_policy by default:
|
|
|
|
# 1. call that's being tested
|
|
|
|
# 2. call in ApplicationController
|
|
|
|
def setup_csp_for_controller(controller_class, csp = ActionDispatch::ContentSecurityPolicy.new, times: 2)
|
2022-05-07 20:08:51 +05:30
|
|
|
expect_next_instance_of(controller_class) do |controller|
|
2023-01-13 00:05:48 +05:30
|
|
|
expect(controller)
|
|
|
|
.to receive(:current_content_security_policy).exactly(times).times
|
|
|
|
.and_return(csp)
|
2022-05-07 20:08:51 +05:30
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|