Sha256: 33607bd0324b6936dd0b1acf6902b63ff4261e91c0be4fff3e39e1a77c9facc0

Contents?: true

Size: 828 Bytes

Versions: 2

Compression:

Stored size: 828 Bytes

Contents

# frozen_string_literal: true

RSpec.describe RuboCop::RSpec::ExampleGroup do
  include RuboCop::Sexp

  subject(:group) { described_class.new(parse_source(source).ast) }

  let(:source) do
    <<-RUBY
    RSpec.describe Foo do
      it 'does x' do
        x
      end

      it 'does y' do
        y
      end

      context 'nested' do
        it 'does z' do
          z
        end
      end
    end
    RUBY
  end

  let(:example_nodes) do
    [
      s(:block,
        s(:send, nil, :it,
          s(:str, 'does x')),
        s(:args), s(:send, nil, :x)),
      s(:block,
        s(:send, nil, :it,
          s(:str, 'does y')),
        s(:args), s(:send, nil, :y))
    ].map { |node| RuboCop::RSpec::Example.new(node) }
  end

  it 'exposes examples in scope' do
    expect(group.examples).to eql(example_nodes)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rubocop-rspec-1.9.1 spec/rubocop/rspec/example_group_spec.rb
rubocop-rspec-1.9.0 spec/rubocop/rspec/example_group_spec.rb