Sha256: 9b0de51ae25cd6f04a128d56f58c3e263e0e014ee7ee71a462d0ec830130549f

Contents?: true

Size: 702 Bytes

Versions: 1

Compression:

Stored size: 702 Bytes

Contents

# frozen_string_literal: true

require 'generators/upgrow'

module Upgrow
  module Generators
    class RecordGenerator < Rails::Generators::NamedBase
      include Helper

      def create_record_file
        template(
          'record.rb',
          File.join('app/records', class_path, "#{file_name}_record.rb")
        )
      end

      hook_for :migration,
        default: :active_record,
        as: :migration do |instance, generator|
        instance.invoke(
          generator, ["create_#{instance.send(:table_name)}", instance.args]
        )
      end

      hook_for :test_framework

      private

      def file_name
        super.delete_suffix('_record')
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
upgrow-0.0.5 lib/generators/upgrow/record/record_generator.rb