Skip to content

Commit 146e469

Browse files
Merge pull request #95 from appropriate/register-subclasses
Register subclasses with OmniAuth.strategies
2 parents 7175717 + f74d983 commit 146e469

File tree

3 files changed

+14
-0
lines changed

3 files changed

+14
-0
lines changed

.travis.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,8 @@ matrix:
2424
gemfile: Gemfile
2525
- rvm: ruby-head
2626
gemfile: Gemfile
27+
allow_failures:
28+
- rvm: jruby-head
29+
- rvm: ruby-head
2730
fast_finish: true
2831
sudo: false

lib/omniauth/strategies/saml.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ module Strategies
66
class SAML
77
include OmniAuth::Strategy
88

9+
def self.inherited(subclass)
10+
OmniAuth::Strategy.included(subclass)
11+
end
12+
913
OTHER_REQUEST_OPTIONS = [:skip_conditions, :allowed_clock_drift, :matches_request_id, :skip_subject_confirmation].freeze
1014

1115
option :name_identifier_format, nil

spec/omniauth/strategies/saml_spec.rb

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,4 +222,11 @@ def post_xml(xml=:example_response)
222222
it 'implements #on_metadata_path?' do
223223
expect(described_class.new(nil)).to respond_to(:on_metadata_path?)
224224
end
225+
226+
describe 'subclass behavior' do
227+
it 'registers subclasses in OmniAuth.strategies' do
228+
subclass = Class.new(described_class)
229+
expect(OmniAuth.strategies).to include(described_class, subclass)
230+
end
231+
end
225232
end

0 commit comments

Comments
 (0)