Sha256: 9f0cc83b08310a46884e0ec2a230b1a059aa70d09271d18946354d2781956784

Contents?: true

Size: 1.51 KB

Versions: 21

Compression:

Stored size: 1.51 KB

Contents

# frozen_string_literal: true

# Copy Blacklight test support material in place

# Need the requires here so we can call the generator from environment.rb
# as suggested above.
require 'rails/generators'
require 'rails/generators/base'
module Blacklight
  class TestSupport < Rails::Generators::Base
    source_root File.expand_path('../templates', __FILE__)

    desc <<-EOS
      Generate blacklight testing configurations for blacklight's own tests, or for blacklight plugins to use for testing
    EOS

    def alternate_controller
      copy_file "alternate_controller.rb", "app/controllers/alternate_controller.rb"

      routing_code = <<-EOF
    resource :alternate, controller: 'alternate', only: [:index] do
      concerns :searchable
    end
      EOF

      sentinel = /concern :searchable[^\n]+\n/

      inject_into_file 'config/routes.rb', routing_code, { after: sentinel, force: true }
    end

    def solr_document_config
      insert_into_file 'app/models/solr_document.rb', after: "include Blacklight::Solr::Document" do
        <<-EOF

            field_semantics.merge!(
              title: "title_tsim",
              author: "author_tsim",
              language: "language_ssim",
              format: "format")
        EOF
      end
    end

    def configure_action_mailer
      insert_into_file "config/environments/test.rb", after: "config.action_mailer.delivery_method = :test\n" do
        <<-EOF
         config.action_mailer.default_options = {from: 'no-reply@example.org'}
        EOF
      end
    end
  end
end

Version data entries

21 entries across 21 versions & 2 rubygems

Version Path
blacklight-8.6.1 lib/generators/blacklight/test_support_generator.rb
blacklight-8.6.0 lib/generators/blacklight/test_support_generator.rb
blacklight-8.5.1 lib/generators/blacklight/test_support_generator.rb
blacklight-8.5.0 lib/generators/blacklight/test_support_generator.rb
blacklight-8.4.0 lib/generators/blacklight/test_support_generator.rb
blacklight-spotlight-3.6.0.beta8 vendor/bundle/ruby/3.2.0/gems/blacklight-8.3.0/lib/generators/blacklight/test_support_generator.rb
blacklight-8.3.0 lib/generators/blacklight/test_support_generator.rb
blacklight-8.2.2 lib/generators/blacklight/test_support_generator.rb
blacklight-8.2.1 lib/generators/blacklight/test_support_generator.rb
blacklight-8.2.0 lib/generators/blacklight/test_support_generator.rb
blacklight-8.1.0 lib/generators/blacklight/test_support_generator.rb
blacklight-8.0.1 lib/generators/blacklight/test_support_generator.rb
blacklight-8.0.0 lib/generators/blacklight/test_support_generator.rb
blacklight-8.0.0.beta8 lib/generators/blacklight/test_support_generator.rb
blacklight-8.0.0.beta7 lib/generators/blacklight/test_support_generator.rb
blacklight-8.0.0.beta6 lib/generators/blacklight/test_support_generator.rb
blacklight-8.0.0.beta5 lib/generators/blacklight/test_support_generator.rb
blacklight-8.0.0.beta4 lib/generators/blacklight/test_support_generator.rb
blacklight-8.0.0.beta3 lib/generators/blacklight/test_support_generator.rb
blacklight-8.0.0.beta2 lib/generators/blacklight/test_support_generator.rb