Sha256: 818a530312795d385b1a48f32042427db913ec46974c4136f2289bc9cc6a09a8

Contents?: true

Size: 1.94 KB

Versions: 23

Compression:

Stored size: 1.94 KB

Contents

# encoding: utf-8

require 'spec_helper'

require 'active_support'
require 'active_support/core_ext'
require 'locomotive/wagon/commands/pull_sub_commands/concerns/assets_concern'

describe Locomotive::Wagon::AssetsConcern do

  let(:concern) { Class.new { include Locomotive::Wagon::AssetsConcern; def path; 'tmp'; end; } }

  describe "calling replace_asset_urls" do

    it "identifies the assets which should be downloaded when pulling" do
      input = <<-INPUT
        <td><img src="https://somedomain.com/sites/51277e8fc0864503db000007/assets/534d2a28e6439a92180009a6/UPPERCASE.CH.FILE.jpg"/></td>
        <td><img src="https://somedomain.com/sites/51277e8fc0864503db000007/assets/532a8eeacf7727c1bb00012e/lowercase.ch.file.jpg" /></td>
        <td><img src="https://somedomain.com/sites/51277e8fc0864503db000007/assets/532a8eeac086452e35000169/some_name.jpg" /></td>
        <td><img src="https://somedomain.com/sites/51277e8fc0864503db000007/assets/532a8eeac086452e35000169/some_name.JPG" /></td>
        <td><img src="https://somedomain.com/sites/51277e8fc0864503db000007/pages/532a8eeac086452e35000169/header.JPG?42" /></td>
      INPUT

      parsed_urls = []
      input.force_encoding('utf-8').gsub(concern::REGEX) do |url|
        parsed_urls.push url
      end

      expect(parsed_urls.count).to eq(5)
    end
  end


  describe '#replace_asset_urls' do

    let(:content)   { %(<td><img src="https://somedomain.com/sites/51277e8fc0864503db000007/assets/532a8eeac086452e35000169/some_name.JPG?42" /></td>) }
    let(:instance)  { concern.new }

    subject { instance.replace_asset_urls(content) }

    it 'removes the query string' do
      expect(instance).to receive(:write_asset).with("https://somedomain.com/sites/51277e8fc0864503db000007/assets/532a8eeac086452e35000169/some_name.JPG?42", "tmp/public/samples/assets/some_name.JPG").and_return('some_name.JPG')
      is_expected.to eq %(<td><img src="/samples/assets/some_name.JPG" /></td>)
    end

  end

end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
locomotivecms_wagon-2.4.1 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.4.0 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.4.0.rc2 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.4.0.rc1 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.3.0 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.3.0.rc1 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.2.0 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.2.0.rc3 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.2.0.rc2 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.2.0.rc1 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.2.0.beta1 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.1.1 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.1.0 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.1.0.rc5 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.1.0.rc4 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.1.0.rc3 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.0.1 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.0.0 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.0.0.rc8 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb
locomotivecms_wagon-2.0.0.rc7 spec/unit/commands/pull_sub_commands/concerns/assets_concern_spec.rb