Sha256: 355f6f8227abf4797956fd66514615e6234e1b5b8cb4acf2247d2aaef515d3b6

Contents?: true

Size: 1.19 KB

Versions: 2

Compression:

Stored size: 1.19 KB

Contents

# encoding: utf-8

describe RuboCop::Cop::RSpec::MultipleDescribes do
  subject(:cop) { described_class.new }

  it 'finds multiple top level describes with class and method' do
    inspect_source(
      cop,
      [
        "describe MyClass, '.do_something' do; end",
        "describe MyClass, '.do_something_else' do; end"
      ]
    )
    expect(cop.offenses.size).to eq(1)
    expect(cop.offenses.map(&:line).sort).to eq([1])
    expect(cop.messages).to eq(['Do not use multiple top level describes - ' \
                                'try to nest them.'])
  end

  it 'finds multiple top level describes only with class' do
    inspect_source(
      cop,
      [
        'describe MyClass do; end',
        'describe MyOtherClass do; end'
      ]
    )
    expect(cop.offenses.size).to eq(1)
    expect(cop.offenses.map(&:line).sort).to eq([1])
    expect(cop.messages).to eq(['Do not use multiple top level describes - ' \
                                'try to nest them.'])
  end

  it 'skips single top level describe' do
    inspect_source(
      cop,
      [
        "require 'spec_helper'",
        '',
        'describe MyClass do; end'
      ]
    )
    expect(cop.offenses).to be_empty
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rubocop-rspec-1.5.1 spec/rubocop/cop/rspec/multiple_describes_spec.rb
rubocop-rspec-1.5.0 spec/rubocop/cop/rspec/multiple_describes_spec.rb