Sha256: 0af29e305dcf3c64626eaf17427090d75ef221bd221c06b0b6e14efeb61910c5

Contents?: true

Size: 792 Bytes

Versions: 2

Compression:

Stored size: 792 Bytes

Contents

class RecordGenerator < Liza::Generator
  main_dsl

  FOLDER = "app/net/records"

  generate :controller do
    folder FOLDER
    filename "#{name}_record.rb"
    content record_content name
  end

  generate :controller_test do
    folder FOLDER
    filename "#{name}_record_test.rb"
    content record_test_content name
  end

  # helper methods

  def record_content name
    <<~CODE
class #{name.camelize}Record < AppRecord
  set :table, :#{name}s

end
    CODE
  end

  def record_test_content name
    <<~CODE
class #{name.camelize}RecordTest < Liza::RecordTest

  test :subject_class do
    assert subject_class == #{name.camelize}Record
  end

  test :settings do
    assert subject_class.log_level == :normal
    assert subject_class.log_color == :red
  end

end
    CODE
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
lizarb-1.0.3 app/dev/generators/record_generator.rb
lizarb-1.0.2 app/dev/generators/record_generator.rb