mirror of
https://github.com/discourse/discourse.git
synced 2025-06-05 09:54:46 +08:00
DEV: Upgrade Rails to version 7.1
--------- Co-authored-by: Jarek Radosz <jradosz@gmail.com>
This commit is contained in:

committed by
Loïc Guitaut

parent
7b8863fcd5
commit
8d249457e8
@ -1,49 +1,47 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
RSpec.describe "Middleware order" do
|
||||
it "order of middleware in the application is correct" do
|
||||
middlewares = Rails.configuration.middleware.map { |middleware| "#{middleware.inspect}" }
|
||||
expect(middlewares).to eq(
|
||||
%w[
|
||||
BlockRequestsMiddleware
|
||||
TestMultisiteMiddleware
|
||||
ActionDispatch::RemoteIp
|
||||
Middleware::RequestTracker
|
||||
MessageBus::Rack::Middleware
|
||||
ActionDispatch::HostAuthorization
|
||||
Rack::Sendfile
|
||||
ActionDispatch::Static
|
||||
ActionDispatch::Executor
|
||||
Rack::MethodOverride
|
||||
Middleware::EnforceHostname
|
||||
ActionDispatch::RequestId
|
||||
SilenceLogger
|
||||
ActionDispatch::ShowExceptions
|
||||
ActionDispatch::DebugExceptions
|
||||
ActionDispatch::Callbacks
|
||||
ActionDispatch::Cookies
|
||||
ActionDispatch::Session::DiscourseCookieStore
|
||||
Discourse::Cors
|
||||
ActionDispatch::Flash
|
||||
RspecErrorTracker
|
||||
Middleware::CspScriptNonceInjector
|
||||
Middleware::AnonymousCache
|
||||
ContentSecurityPolicy::Middleware
|
||||
ActionDispatch::PermissionsPolicy::Middleware
|
||||
Rack::Head
|
||||
Rack::ConditionalGet
|
||||
Rack::TempfileReaper
|
||||
Middleware::OmniauthBypassMiddleware
|
||||
],
|
||||
)
|
||||
let(:expected_middlewares) do
|
||||
[
|
||||
BlockRequestsMiddleware,
|
||||
TestMultisiteMiddleware,
|
||||
ActionDispatch::RemoteIp,
|
||||
Middleware::RequestTracker,
|
||||
MessageBus::Rack::Middleware,
|
||||
Rack::Sendfile,
|
||||
ActionDispatch::Static,
|
||||
ActionDispatch::Executor,
|
||||
Rack::MethodOverride,
|
||||
Middleware::EnforceHostname,
|
||||
ActionDispatch::RequestId,
|
||||
SilenceLogger,
|
||||
ActionDispatch::ShowExceptions,
|
||||
ActionDispatch::DebugExceptions,
|
||||
ActionDispatch::Callbacks,
|
||||
ActionDispatch::Cookies,
|
||||
ActionDispatch::Session::DiscourseCookieStore,
|
||||
Discourse::Cors,
|
||||
ActionDispatch::Flash,
|
||||
RspecErrorTracker,
|
||||
Middleware::CspScriptNonceInjector,
|
||||
Middleware::AnonymousCache,
|
||||
ContentSecurityPolicy::Middleware,
|
||||
ActionDispatch::PermissionsPolicy::Middleware,
|
||||
Rack::Head,
|
||||
Rack::ConditionalGet,
|
||||
Rack::TempfileReaper,
|
||||
Middleware::OmniauthBypassMiddleware,
|
||||
]
|
||||
end
|
||||
let(:actual_middlewares) { Rails.configuration.middleware.middlewares }
|
||||
let(:remote_ip_index) { actual_middlewares.index(ActionDispatch::RemoteIp) }
|
||||
let(:request_tracker_index) { actual_middlewares.index(Middleware::RequestTracker) }
|
||||
|
||||
it "has the correct order of middlewares" do
|
||||
expect(actual_middlewares).to eq(expected_middlewares)
|
||||
end
|
||||
|
||||
it "ensures that ActionDispatch::RemoteIp comes before Middleware::RequestTracker" do
|
||||
remote_ip_found = false
|
||||
request_tracker_found = false
|
||||
Rails.configuration.middleware.each do |middleware|
|
||||
remote_ip_found = true if middleware.inspect == "ActionDispatch::RemoteIp"
|
||||
expect(remote_ip_found).to eq(true) if middleware.inspect == "Middleware::RequestTracker"
|
||||
end
|
||||
expect(remote_ip_index).to be < request_tracker_index
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user