Sha256: 167b03bc602408dd8f68f8f11f3d0a185eb376407324e516fd0bae28b5edb30b

Contents?: true

Size: 1.02 KB

Versions: 17

Compression:

Stored size: 1.02 KB

Contents

require 'spec_helper'

RSpec.describe Loga::ServiceVersionStrategies do
  describe '#call' do
    context 'when GIT is available' do
      before do
        allow(described_class::SCM_GIT).to receive(:call).and_return("2776b9c\n")
      end

      it 'returns the git sha' do
        expect(subject.call).to eql('2776b9c')
      end
    end

    context 'when REVISION file is available' do
      before do
        allow(described_class::SCM_GIT).to receive(:call).and_return(nil)
        allow(File).to receive(:read).with('REVISION').and_return("2776b9c\n")
      end

      it 'returns the file content' do
        expect(subject.call).to eql('2776b9c')
      end
    end

    context 'when both GIT and REVISION file are unavailable' do
      before do
        allow(described_class::SCM_GIT).to       receive(:call).and_return(nil)
        allow(described_class::REVISION_FILE).to receive(:call).and_return(nil)
      end

      it 'returns a default value' do
        expect(subject.call).to eql('unknown.sha')
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
loga-2.8.0 spec/unit/loga/service_version_strategies_spec.rb
loga-2.7.0 spec/unit/loga/service_version_strategies_spec.rb
loga-2.6.1 spec/unit/loga/service_version_strategies_spec.rb
loga-2.6.0 spec/unit/loga/service_version_strategies_spec.rb
loga-2.5.4 spec/unit/loga/service_version_strategies_spec.rb
loga-2.5.3 spec/unit/loga/service_version_strategies_spec.rb
loga-2.5.2 spec/unit/loga/service_version_strategies_spec.rb
loga-2.5.1 spec/unit/loga/service_version_strategies_spec.rb
loga-2.5.0 spec/unit/loga/service_version_strategies_spec.rb
loga-2.4.0 spec/unit/loga/service_version_strategies_spec.rb
loga-2.3.1 spec/unit/loga/service_version_strategies_spec.rb
loga-2.3.0 spec/unit/loga/service_version_strategies_spec.rb
loga-2.2.0 spec/unit/loga/service_version_strategies_spec.rb
loga-2.1.2 spec/unit/loga/service_version_strategies_spec.rb
loga-2.1.1 spec/unit/loga/service_version_strategies_spec.rb
loga-2.0.0 spec/unit/loga/service_version_strategies_spec.rb
loga-2.1.0 spec/unit/loga/service_version_strategies_spec.rb