title: rspec DatabaseCleaner skip clean for example group metadata tag
body: <p>How can I tag an example group so that the database isn't cleaned between each example, but is cleaned before and after the whole group? And untagged specs should clean the database between each example.</p>
  
  <p>I would like to write:</p>
  
  <pre><code>describe 'my_dirty_group', :dont_clean do
    ...
  end
  </code></pre>
  
  <p>So in my spec_helper.rb I put:</p>
  
  <pre><code>  config.use_transactional_fixtures = false
  
    config.before(:suite) do
      DatabaseCleaner.strategy = :truncation
    end
  
    config.before(:suite, dont_clean: true) do
      DatabaseCleaner.clean
    end
  
    config.after(:suite, dont_clean: true) do
      DatabaseCleaner.clean
    end
  
    config.before(:each, dont_clean: nil) do
      DatabaseCleaner.start
    end
  
    config.before(:each, dont_clean: nil) do
      DatabaseCleaner.clean
    end
  </code></pre>
  
  <p>The problem is that the <code>dont_clean: nil</code> (or false) blocks in spec_helper don't run when the metadata tag is not specified. Is there another way to check for presence of :dont_clean before cleaning between examples?</p>