module AnnotateModels::FilePatterns

This module provides module method to get file paths.

Constants

ACTIVEADMIN_DIR

Active admin registry files

BLUEPRINTS_SPEC_DIR
BLUEPRINTS_TEST_DIR

Machinist github.com/notahat/machinist

CONTROLLER_DIR

Controller files

CONTROLLER_SPEC_DIR
CONTROLLER_TEST_DIR

Other test files

EXEMPLARS_SPEC_DIR
EXEMPLARS_TEST_DIR

Object Daddy github.com/flogic/object_daddy/tree/master

FABRICATORS_SPEC_DIR
FABRICATORS_TEST_DIR

Fabrication github.com/paulelliott/fabrication.git

FACTORY_BOT_SPEC_DIR
FACTORY_BOT_TEST_DIR

Factory Bot github.com/thoughtbot/factory_bot

FIXTURE_SPEC_DIR
FIXTURE_TEST_DIR
HELPER_DIR

Helper files

MODEL_TEST_DIR
REQUEST_SPEC_DIR
ROUTING_SPEC_DIR
SERIALIZERS_DIR

Serializers github.com/rails-api/active_model_serializers

SERIALIZERS_SPEC_DIR
SERIALIZERS_TEST_DIR
SPEC_MODEL_DIR
UNIT_TEST_DIR

File.join for windows reverse bar compat? I dont use windows, can`t test

Public Class Methods

generate(root_directory, pattern_type, options) click to toggle source
# File lib/annotate/annotate_models/file_patterns.rb, line 50
def generate(root_directory, pattern_type, options)
  case pattern_type
  when 'test'       then test_files(root_directory)
  when 'fixture'    then fixture_files(root_directory)
  when 'scaffold'   then scaffold_files(root_directory)
  when 'factory'    then factory_files(root_directory)
  when 'serializer' then serialize_files(root_directory)
  when 'additional_file_patterns'
    [options[:additional_file_patterns] || []].flatten
  when 'controller'
    [File.join(root_directory, CONTROLLER_DIR, '%PLURALIZED_MODEL_NAME%_controller.rb')]
  when 'admin'
    [
      File.join(root_directory, ACTIVEADMIN_DIR, '%MODEL_NAME%.rb'),
      File.join(root_directory, ACTIVEADMIN_DIR, '%PLURALIZED_MODEL_NAME%.rb')
    ]
  when 'helper'
    [File.join(root_directory, HELPER_DIR, '%PLURALIZED_MODEL_NAME%_helper.rb')]
  else
    []
  end
end

Private Class Methods

factory_files(root_directory) click to toggle source
# File lib/annotate/annotate_models/file_patterns.rb, line 101
def factory_files(root_directory)
  [
    File.join(root_directory, EXEMPLARS_TEST_DIR,   '%MODEL_NAME%_exemplar.rb'),
    File.join(root_directory, EXEMPLARS_SPEC_DIR,   '%MODEL_NAME%_exemplar.rb'),
    File.join(root_directory, BLUEPRINTS_TEST_DIR,  '%MODEL_NAME%_blueprint.rb'),
    File.join(root_directory, BLUEPRINTS_SPEC_DIR,  '%MODEL_NAME%_blueprint.rb'),
    File.join(root_directory, FACTORY_BOT_TEST_DIR, '%MODEL_NAME%_factory.rb'),    # (old style)
    File.join(root_directory, FACTORY_BOT_SPEC_DIR, '%MODEL_NAME%_factory.rb'),    # (old style)
    File.join(root_directory, FACTORY_BOT_TEST_DIR, '%TABLE_NAME%.rb'),            # (new style)
    File.join(root_directory, FACTORY_BOT_SPEC_DIR, '%TABLE_NAME%.rb'),            # (new style)
    File.join(root_directory, FACTORY_BOT_TEST_DIR, '%PLURALIZED_MODEL_NAME%.rb'), # (new style)
    File.join(root_directory, FACTORY_BOT_SPEC_DIR, '%PLURALIZED_MODEL_NAME%.rb'), # (new style)
    File.join(root_directory, FABRICATORS_TEST_DIR, '%MODEL_NAME%_fabricator.rb'),
    File.join(root_directory, FABRICATORS_SPEC_DIR, '%MODEL_NAME%_fabricator.rb')
  ]
end
fixture_files(root_directory) click to toggle source
# File lib/annotate/annotate_models/file_patterns.rb, line 83
def fixture_files(root_directory)
  [
    File.join(root_directory, FIXTURE_TEST_DIR, '%TABLE_NAME%.yml'),
    File.join(root_directory, FIXTURE_SPEC_DIR, '%TABLE_NAME%.yml'),
    File.join(root_directory, FIXTURE_TEST_DIR, '%PLURALIZED_MODEL_NAME%.yml'),
    File.join(root_directory, FIXTURE_SPEC_DIR, '%PLURALIZED_MODEL_NAME%.yml')
  ]
end
scaffold_files(root_directory) click to toggle source
# File lib/annotate/annotate_models/file_patterns.rb, line 92
def scaffold_files(root_directory)
  [
    File.join(root_directory, CONTROLLER_TEST_DIR, '%PLURALIZED_MODEL_NAME%_controller_test.rb'),
    File.join(root_directory, CONTROLLER_SPEC_DIR, '%PLURALIZED_MODEL_NAME%_controller_spec.rb'),
    File.join(root_directory, REQUEST_SPEC_DIR,    '%PLURALIZED_MODEL_NAME%_spec.rb'),
    File.join(root_directory, ROUTING_SPEC_DIR,    '%PLURALIZED_MODEL_NAME%_routing_spec.rb')
  ]
end
serialize_files(root_directory) click to toggle source
# File lib/annotate/annotate_models/file_patterns.rb, line 118
def serialize_files(root_directory)
  [
    File.join(root_directory, SERIALIZERS_DIR,      '%MODEL_NAME%_serializer.rb'),
    File.join(root_directory, SERIALIZERS_TEST_DIR, '%MODEL_NAME%_serializer_test.rb'),
    File.join(root_directory, SERIALIZERS_SPEC_DIR, '%MODEL_NAME%_serializer_spec.rb')
  ]
end
test_files(root_directory) click to toggle source
# File lib/annotate/annotate_models/file_patterns.rb, line 75
def test_files(root_directory)
  [
    File.join(root_directory, UNIT_TEST_DIR,  '%MODEL_NAME%_test.rb'),
    File.join(root_directory, MODEL_TEST_DIR, '%MODEL_NAME%_test.rb'),
    File.join(root_directory, SPEC_MODEL_DIR, '%MODEL_NAME%_spec.rb')
  ]
end