Sha256: 4e8b85a330c5a99cfb505df8661760fcd8a43c8a3e7ca3fcb737ca02f3f40f7a

Contents?: true

Size: 1.04 KB

Versions: 12

Compression:

Stored size: 1.04 KB

Contents

# encoding: utf-8

require 'spec_helper'

describe Rubocop::Cop::Util do
  describe '#line_range' do
    include ASTHelper

    let(:source) do
      <<-END
        foo = 1
        bar = 2
        class Test
          def some_method
            do_something
          end
        end
        baz = 8
      END
    end

    let(:ast) do
      processed_source = parse_source(source)
      processed_source.ast
    end

    let(:node) do
      target_node = scan_node(ast) do |node|
        break node if node.type == :class
      end
      fail 'No target node found!' unless target_node
      target_node
    end

    context 'when Source::Range object is passed' do
      it 'returns line range of that' do
        line_range = Rubocop::Cop::Util.line_range(node.loc.expression)
        expect(line_range).to eq(3..7)
      end
    end

    context 'when AST::Node object is passed' do
      it 'returns line range of the expression' do
        line_range = Rubocop::Cop::Util.line_range(node)
        expect(line_range).to eq(3..7)
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 2 rubygems

Version Path
ridecharge-rubocop-0.0.1 spec/rubocop/cop/util_spec.rb
rubocop-0.21.0 spec/rubocop/cop/util_spec.rb
rubocop-0.20.1 spec/rubocop/cop/util_spec.rb
rubocop-0.20.0 spec/rubocop/cop/util_spec.rb
rubocop-0.19.1 spec/rubocop/cop/util_spec.rb
rubocop-0.19.0 spec/rubocop/cop/util_spec.rb
rubocop-0.18.1 spec/rubocop/cop/util_spec.rb
rubocop-0.18.0 spec/rubocop/cop/util_spec.rb
rubocop-0.17.0 spec/rubocop/cop/util_spec.rb
rubocop-0.16.0 spec/rubocop/cop/util_spec.rb
rubocop-0.15.0 spec/rubocop/cop/util_spec.rb
rubocop-0.14.1 spec/rubocop/cop/util_spec.rb