DEV: Introduce :before_auth DiscourseEvent (#11233)

This is useful for plugins to manipulate the auth hash from OmniAuth before it is read by the Authenticator class
This commit is contained in:
David Taylor
2020-11-13 14:41:54 +00:00
committed by GitHub
parent 0d0ae5e67f
commit dc005c593e
4 changed files with 4 additions and 0 deletions

View File

@ -196,6 +196,7 @@ RSpec.describe Users::OmniauthCallbacksController do
Rails.application.env_config["omniauth.origin"] = destination_url
events = DiscourseEvent.track_events { get "/auth/google_oauth2/callback.json" }
expect(events.any? { |e| e[:event_name] == :before_auth }).to eq(true)
expect(events.any? { |e| e[:event_name] === :after_auth && Auth::GoogleOAuth2Authenticator === e[:params][0] && !e[:params][1].failed? }).to eq(true)
expect(response.status).to eq(302)