Sha256: 214d159d6c19754acb58f9c56ede4d35a93d53496cc0443a26a58e22cdb081b0

Contents?: true

Size: 1.12 KB

Versions: 9

Compression:

Stored size: 1.12 KB

Contents

require 'spec_helper'
require 'image_optim/bin_resolver/simple_version'

describe ImageOptim::BinResolver::SimpleVersion do
  helpers = Module.new do
    def v(str)
      ImageOptim::BinResolver::SimpleVersion.new(str)
    end
  end
  include helpers
  extend helpers

  describe 'compares version 1.17' do
    subject{ v '1.17' }

    it{ is_expected.to be > '0' }
    it{ is_expected.to be > '0.1' }
    it{ is_expected.to be > '0.9' }
    it{ is_expected.to be > '1.9' }
    it{ is_expected.to be < '1.17.1' }
    it{ is_expected.to be < '1.99' }
    it{ is_expected.to be < '2.1' }
  end

  describe 'normalization' do
    %w[
      1
      01
      1.0
      1.00
      1.0.0
      1.0.0.0
    ].each do |variation|
      it "normalizes #{variation}" do
        expect(v variation).to eq(1)
      end
    end
  end

  describe 'conversion' do
    it 'converts Integer' do
      expect(v 117).to eq('117')
    end

    it 'converts Float' do
      expect(v 1.17).to eq('1.17')
    end

    it 'converts String' do
      expect(v '1.17').to eq('1.17')
    end

    it 'converts self' do
      expect(v(v 1.17)).to eq('1.17')
    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
image_optim-0.22.0 spec/image_optim/bin_resolver/simple_version_spec.rb
openstreetmap-image_optim-0.21.0.1 spec/image_optim/bin_resolver/simple_version_spec.rb
image_optim-0.21.0 spec/image_optim/bin_resolver/simple_version_spec.rb
image_optim-0.20.2 spec/image_optim/bin_resolver/simple_version_spec.rb
image_optim-0.20.1 spec/image_optim/bin_resolver/simple_version_spec.rb
image_optim-0.20.0 spec/image_optim/bin_resolver/simple_version_spec.rb
image_optim-0.19.1 spec/image_optim/bin_resolver/simple_version_spec.rb
image_optim-0.19.0 spec/image_optim/bin_resolver/simple_version_spec.rb
image_optim-0.18.0 spec/image_optim/bin_resolver/simple_version_spec.rb