Sha256: 6c804605abfed8228df3e094681b5219f343e8870dc53a9d081fa0b5c7ffce9f

Contents?: true

Size: 1.45 KB

Versions: 1

Compression:

Stored size: 1.45 KB

Contents

# frozen_string_literal: true

require 'spec_helper'

describe 'ghostbuster_facts' do
  let(:code) { "Facter.add('foo')" }

  context 'with fix disabled' do
    context 'when fact is not used' do
      let(:path) { './spec/fixtures/modules/foo/lib/facter/multi.rb' }

      it 'detects one problem' do
        expect(problems.size).to eq(2)
      end

      it 'creates a warning' do
        expect(problems).to contain_warning('Fact multi1 seems unused')
      end

      it 'creates a warning' do
        expect(problems).to contain_warning('Fact multi2 seems unused')
      end
    end

    context 'when fact is used in a string' do
      let(:path) { './spec/fixtures/modules/foo/lib/facter/foo.rb' }

      it 'does not detect any problem' do
        expect(problems.size).to eq(0)
      end
    end

    context 'when fact is used in manifest' do
      let(:path) { './spec/fixtures/modules/foo/lib/facter/bar.rb' }

      it 'does not detect any problem' do
        expect(problems.size).to eq(0)
      end
    end

    context 'when fact is used in a template' do
      let(:path) { './spec/fixtures/modules/foo/lib/facter/baz.rb' }

      it 'does not detect any problem' do
        expect(problems.size).to eq(0)
      end
    end

    context 'when fact is used in an inline_template' do
      let(:path) { './spec/fixtures/modules/foo/lib/facter/quux.rb' }

      it 'does not detect any problem' do
        expect(problems.size).to eq(0)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
puppet-ghostbuster-1.1.0 spec/puppet-lint/plugins/ghostbuster_facts_spec.rb