It is possible to do something outrageous:
Move this two contexts into another spec file and require there different `spec_helper`, so inside this suite both syntax will be available by default.
And so we can check that object responds to `should` when we didn't run `disable_monkey_patching!` and in another example check that object does not responds to `should` when we did run `disable_monkey_patching!`

We can go even further (without need to create different `spec_helper`), we can take advantage of environment variables for example:

```ruby
# spec/rspec/core/our_brand_new_spec.rb
ENV['ALLOW_SHOULD_SYNTAX'] = 'true'
require 'spec_helper'

# here our specs
```

```ruby
# spec/spec_helper.rb
# ...
    c.expect_with :rspec do |expectations|
      expectations.syntax = ENV['ALLOW_SHOULD_SYNTAX'] == 'true' ? [:expect, :should] : :expect
    end

    c.mock_with :rspec do |mocks|
      mocks.syntax = ENV['ALLOW_SHOULD_SYNTAX'] == 'true' ? [:expect, :should] : :expect
    end
# ...
```

That might work. But is that a good approach to problem ?