Sha256: fb7326ee1bb487d0e2f5f112f2fac79f5453e4db692f8d4dffaf2519e0e80611

Contents?: true

Size: 1.23 KB

Versions: 2

Compression:

Stored size: 1.23 KB

Contents

# encoding: utf-8

require 'spec_helper'

module Rubocop
  module Cop
    module Lint
      describe EnsureReturn do
        subject(:cop) { EnsureReturn.new }

        it 'registers an offence for return in ensure' do
          inspect_source(cop,
                         ['begin',
                          '  something',
                          'ensure',
                          '  file.close',
                          '  return',
                          'end'])
          expect(cop.offences.size).to eq(1)
        end

        it 'does not register an offence for return outside ensure' do
          inspect_source(cop,
                         ['begin',
                          '  something',
                          '  return',
                          'ensure',
                          '  file.close',
                          'end'])
          expect(cop.offences).to be_empty
        end

        it 'does not check when ensure block has no body' do
          expect do
            inspect_source(cop,
                           ['begin',
                            '  something',
                            'ensure',
                            'end'])
          end.to_not raise_exception
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rubocop-0.13.1 spec/rubocop/cop/lint/ensure_return_spec.rb
rubocop-0.13.0 spec/rubocop/cop/lint/ensure_return_spec.rb