Sha256: ca08b02018705c03e195b21e4fa2112e0eb92dc689bc56f05d867f6083a1af61

Contents?: true

Size: 1.5 KB

Versions: 8

Compression:

Stored size: 1.5 KB

Contents

# @api private
module RSpec
  module Rails
    # @private
    # Disable some cops until https://github.com/bbatsov/rubocop/issues/1310
    # rubocop:disable Style/IndentationConsistency
    module FeatureCheck
    # rubocop:disable Style/IndentationWidth
    module_function
      # rubocop:enable Style/IndentationWidth

      def can_check_pending_migrations?
        has_active_record_migration? &&
          ::ActiveRecord::Migration.respond_to?(:check_pending!)
      end

      def can_maintain_test_schema?
        has_active_record_migration? &&
          ::ActiveRecord::Migration.respond_to?(:maintain_test_schema!)
      end

      def has_active_job?
        defined?(::ActiveJob)
      end

      def has_active_record?
        defined?(::ActiveRecord)
      end

      def has_active_record_migration?
        has_active_record? && defined?(::ActiveRecord::Migration)
      end

      def has_action_mailer?
        defined?(::ActionMailer)
      end

      def has_action_mailer_preview?
        has_action_mailer? && defined?(::ActionMailer::Preview)
      end

      def has_action_mailer_show_preview?
        has_action_mailer_preview? &&
          ::ActionMailer::Base.respond_to?(:show_previews=)
      end

      def has_1_9_hash_syntax?
        ::Rails::VERSION::STRING > '4.0'
      end

      def type_metatag(type)
        if has_1_9_hash_syntax?
          "type: :#{type}"
        else
          ":type => :#{type}"
        end
      end
    end
    # rubocop:enable Style/IndentationConsistency
  end
end

Version data entries

8 entries across 8 versions & 3 rubygems

Version Path
sc_core-0.0.7 test/dummy/vendor/bundle/ruby/2.2.0/gems/rspec-rails-3.3.3/lib/rspec/rails/feature_check.rb
solidus_backend-1.0.0.pre3 vendor/bundle/gems/rspec-rails-3.3.2/lib/rspec/rails/feature_check.rb
solidus_backend-1.0.0.pre2 vendor/bundle/gems/rspec-rails-3.3.2/lib/rspec/rails/feature_check.rb
rspec-rails-3.3.3 lib/rspec/rails/feature_check.rb
solidus_backend-1.0.0.pre vendor/bundle/gems/rspec-rails-3.3.2/lib/rspec/rails/feature_check.rb
rspec-rails-3.3.2 lib/rspec/rails/feature_check.rb
rspec-rails-3.3.1 lib/rspec/rails/feature_check.rb
rspec-rails-3.3.0 lib/rspec/rails/feature_check.rb