Sha256: 3817bd824fe6b575237b997c79e5491900cdeee90ad3ca8751098777d3fb658d

Contents?: true

Size: 865 Bytes

Versions: 21

Compression:

Stored size: 865 Bytes

Contents

RSpec.shared_examples_for 'Metasploit::Concern.run' do
  let(:load_hook_name) {
    described_class.name.underscore.gsub('/', '_').to_sym
  }

  let(:loaded_bases_by_name) {
    ActiveSupport.module_eval { @loaded }
  }

  context 'with correct base' do
    it 'calls ActiveSupport.run_load_hooks with correct load hook name' do
      actual_names = []

      loaded_bases_by_name.each do |name, bases|
        bases.each do |base|
          if base == described_class
            actual_names << name
            break
          end
        end
      end

      expect(actual_names).to include(load_hook_name)
    end
  end

  context 'with correct load hook name' do
    it 'calls ActiveSupport.run_load_hooks with correct base' do
      actual_bases = loaded_bases_by_name[load_hook_name]

      expect(actual_bases).to include(described_class)
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
metasploit-concern-5.0.4 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-5.0.3 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-5.0.2 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-5.0.1 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-5.0.0 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-4.0.5 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-4.0.4 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-4.0.3 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-4.0.2 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-4.0.1 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-4.0.0 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-3.0.2 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-3.0.1 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-3.0.0 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-2.0.5 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-2.0.4 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-2.0.3 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-2.0.2 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-2.0.1 spec/support/shared/examples/metasploit/concern/run.rb
metasploit-concern-2.0.0 spec/support/shared/examples/metasploit/concern/run.rb