Sha256: fcd7bd22a0a9e96eb577a9a607de7b942040e7e0dcf4aef298f41c91080d7e94

Contents?: true

Size: 909 Bytes

Versions: 23

Compression:

Stored size: 909 Bytes

Contents

require 'generators/rspec'

module Rspec
  module Generators
    # @private
    class ModelGenerator < Base
      argument :attributes,
               type: :array,
               default: [],
               banner: "field:type field:type"
      class_option :fixture, type: :boolean

      def create_model_spec
        template_file = File.join(
          'spec/models',
          class_path,
          "#{file_name}_spec.rb"
        )
        template 'model_spec.rb', template_file
      end

      hook_for :fixture_replacement

      def create_fixture_file
        return unless missing_fixture_replacement?

        template 'fixtures.yml', File.join('spec/fixtures', class_path, "#{(pluralize_table_names? ? plural_file_name : file_name)}.yml")
      end

    private

      def missing_fixture_replacement?
        options[:fixture] && options[:fixture_replacement].nil?
      end
    end
  end
end

Version data entries

23 entries across 21 versions & 4 rubygems

Version Path
scrapbook-0.3.2 vendor/ruby/2.7.0/gems/rspec-rails-5.1.2/lib/generators/rspec/model/model_generator.rb
scrapbook-0.3.2 vendor/ruby/2.7.0/gems/rspec-rails-5.1.1/lib/generators/rspec/model/model_generator.rb
scrapbook-0.3.1 vendor/ruby/2.7.0/gems/rspec-rails-5.1.1/lib/generators/rspec/model/model_generator.rb
scrapbook-0.3.1 vendor/ruby/2.7.0/gems/rspec-rails-5.1.2/lib/generators/rspec/model/model_generator.rb
rspec-rails-5.1.2 lib/generators/rspec/model/model_generator.rb
rspec-rails-6.0.0.rc1 lib/generators/rspec/model/model_generator.rb
rspec-rails-5.1.1 lib/generators/rspec/model/model_generator.rb
rspec-rails-5.1.0 lib/generators/rspec/model/model_generator.rb
rspec-rails-5.0.3 lib/generators/rspec/model/model_generator.rb
date_n_time_picker_activeadmin-0.1.2 vendor/bundle/ruby/2.6.0/gems/rspec-rails-5.0.2/lib/generators/rspec/model/model_generator.rb
date_n_time_picker_activeadmin-0.1.1 vendor/bundle/ruby/2.6.0/gems/rspec-rails-5.0.2/lib/generators/rspec/model/model_generator.rb
rspec-rails-5.0.2 lib/generators/rspec/model/model_generator.rb
rails_mini_profiler-0.2.0 vendor/bundle/ruby/3.0.0/gems/rspec-rails-4.1.2/lib/generators/rspec/model/model_generator.rb
rspec-rails-5.0.1 lib/generators/rspec/model/model_generator.rb
rspec-rails-4.1.2 lib/generators/rspec/model/model_generator.rb
rspec-rails-5.0.0 lib/generators/rspec/model/model_generator.rb
rspec-rails-4.1.1 lib/generators/rspec/model/model_generator.rb
rspec-rails-4.1.0 lib/generators/rspec/model/model_generator.rb
rspec-rails-4.0.2 lib/generators/rspec/model/model_generator.rb
rspec-rails-4.0.1 lib/generators/rspec/model/model_generator.rb