Sha256: 9bbd94bd7fed0a56ef36ed95f4aa365534a597cffbc72a46fa7c70e1826fadd0

Contents?: true

Size: 1.67 KB

Versions: 22

Compression:

Stored size: 1.67 KB

Contents

require 'spec_helper'

require_relative '../../../lib/locomotive/steam/adapters/filesystem.rb'
require_relative '../../../lib/locomotive/steam/adapters/mongodb.rb'

describe Locomotive::Steam::ThemeAssetRepository do

  let(:site)        { Locomotive::Steam::Site.new(_id: site_id, locales: %w(en fr nb)) }
  let(:repository)  { described_class.new(adapter, site, :en) }

  context 'MongoDB' do

    let(:site_id) { mongodb_site_id }
    let(:adapter) { Locomotive::Steam::MongoDBAdapter.new(database: 'steam_test', hosts: ['127.0.0.1:27017']) }

    describe '#all' do
      subject { repository.all }
      it { expect(subject.size).to eq 16 }
    end

    describe '#url_for' do
      subject { repository.url_for('stylesheets/application.css') }
      it { is_expected.to eq "/sites/#{mongodb_site_id}/theme/stylesheets/application.css" }
    end

    describe '#checksums' do
      subject { repository.checksums }
      it { expect(subject.size).to eq 16 }
      it { expect(subject['stylesheets/application.css']).to eq '3bacf4c2b7877e230e6990d72dae7724' }
    end

  end

  context 'Filesystem' do

    let(:site_id) { 1 }
    let(:adapter) { Locomotive::Steam::FilesystemAdapter.new(default_fixture_site_path) }

    describe '#all' do
      subject { repository.all }
      it { expect(subject.size).to eq 16 }
    end

    describe '#url_for' do
      subject { repository.url_for('stylesheets/application.css') }
      it { is_expected.to eq '/stylesheets/application.css' }
    end

    describe '#checksums' do
      subject { repository.checksums }
      it { expect(subject).to eq({}) }
    end

    after(:all) { Locomotive::Steam::Adapters::Filesystem::SimpleCacheStore.new.clear }

  end

end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
locomotivecms_steam-1.1.2 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.2.1 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.2.0 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.2.0.rc3 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.2.0.rc2 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.2.0.rc1 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.2.0.beta1 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.1.1 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.1.0 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.1.0.rc3 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.1.0.rc2 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.1.0.rc1 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.0.1 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.0.0 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.0.0.rc10 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.0.0.rc9 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.0.0.rc8 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.0.0.rc6 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.0.0.rc4 spec/integration/repositories/theme_asset_repository_spec.rb
locomotivecms_steam-1.0.0.rc3 spec/integration/repositories/theme_asset_repository_spec.rb