It is something unbelievable:

```ruby
      context 'when rspec-mocks is not loaded' do
        let!(:original_mocks) { RSpec::Mocks }

        # trick to emulate mock framework adapter initial loading
        # shortly, to restore #configuration method
        before do
          allow(RSpec.configuration).to receive(:mock_with).with(:rspec) do |framework|
            RSpec::Mocks.instance_eval do
              def configuration
                original_mocks.configuration
              end
            end
            RSpec.configuration.instance_eval { @mock_framework = RSpec::Core::MockingAdapters::RSpec }
          end
        end

        # trick RSpec to think that RSpec::Mocks is not configured
        before do
          mocks = stub_const('RSpec::Mocks', RSpec::Mocks.dup)
          mocks.instance_eval { undef :configuration }
          config.instance_eval { @mock_framework = nil }
        end

        # trick example group to think it is not yet configured
        before { ExampleGroup.remove_class_variable :@@example_groups_configured }

        it 'loads rspec-mocks' do
          puts config.instance_variable_get(:@mock_framework).nil?
          expect {
            ExampleGroup.ensure_example_groups_are_configured
            puts config.instance_variable_get(:@mock_framework).nil?
          }.to change { defined?(RSpec::Mocks.configuration) }.from(nil).to('method')
        end
      end
```

trying to make it easier.