Sha256: 878bf92973036e4ca23990de6143a956431478a94c1fc207d49da9200e9ecf11

Contents?: true

Size: 1.08 KB

Versions: 6

Compression:

Stored size: 1.08 KB

Contents

require 'spec_helper'
require 'generator_spec'
require 'generators/solidus/views/override_generator'

RSpec.describe Solidus::Views::OverrideGenerator, type: :generator do
  destination Rails.root.join('app', 'views', 'spree')

  before(:all) do
    prepare_destination
  end

  subject! do
    run_generator arguments
  end

  let(:src) do
    Spree::Frontend::Engine.root.join('app', 'views', 'spree')
  end

  let(:dest) do
    Rails.root.join('app', 'views', 'spree')
  end

  context 'without any arguments' do
    let(:arguments) { %w() }

    it 'copies all views into the host app' do
      expect(src.entries).to match_array(dest.entries)
    end
  end

  context 'when "products" is passed as --only argument' do
    let(:arguments) { %w(--only products) }

    context 'as folder' do
      it 'exclusively copies views whose name contains "products"' do
        Dir.glob(dest.join("**", "*")).each do |file|
          next if File.directory?(file)
          expect(file.to_s).to match("products")
        end
      end
    end
  end

  after do
    FileUtils.rm_rf destination_root
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
solidus_frontend-2.5.2 spec/generators/solidus/views/override_generator_spec.rb
solidus_frontend-2.5.1 spec/generators/solidus/views/override_generator_spec.rb
solidus_frontend-2.5.0 spec/generators/solidus/views/override_generator_spec.rb
solidus_frontend-2.5.0.rc1 spec/generators/solidus/views/override_generator_spec.rb
solidus_frontend-2.5.0.beta2 spec/generators/solidus/views/override_generator_spec.rb
solidus_frontend-2.5.0.beta1 spec/generators/solidus/views/override_generator_spec.rb