Sha256: c833acb8e95576f062a06779cfffd384cc69c2206f9cd82f7ed3c228db7f0145

Contents?: true

Size: 1.11 KB

Versions: 8

Compression:

Stored size: 1.11 KB

Contents

require 'rails_helper'

describe Museum::Case do
  include_context 'loupe support'
  include_context 'case support'

  it { should validate_presence_of(:name) }
  it { should have_many(:case_details) }

  describe '#freshen_if_expired' do
    subject { expired_package.freshen_if_expired }
    its(:updated_at) { should be > (Time.now - Museum.configuration.refresh_interval) }
  end

  describe '#expired?' do
    describe 'on an expired package' do
      subject { expired_package.expired? }
      it { should be true }
    end
    describe 'on a fresh package' do
      subject { fresh_package.expired? }
      it { should be false }
    end
  end

  describe '#freshen' do
    subject do
      {
          old_value: dummy_package.updated_at.to_datetime,
          new_value: sleep(10) && dummy_package.freshen.updated_at.to_datetime
      }
    end
    its([:new_value]) { should be > subject[:old_value] }
  end

  describe '#loupe' do
    subject { fresh_package.loupe('rubygems').count }
    it { should be > 2 }
  end

  describe '#to_param' do
    subject { dummy_package.to_param }
    it { should be_a String }
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
museum-0.5.8 spec/models/case_spec.rb
museum-0.5.7 spec/models/case_spec.rb
museum-0.5.6 spec/models/case_spec.rb
museum-0.5.4 spec/models/case_spec.rb
museum-0.5.3 spec/models/case_spec.rb
museum-0.5.2 spec/models/case_spec.rb
museum-0.5.1 spec/models/case_spec.rb
museum-0.5.0 spec/models/case_spec.rb