Sha256: dca5693c01624f6dacce6b8c6114682f1346d9a30d15c4b3d04e6f8e93533a27

Contents?: true

Size: 1.38 KB

Versions: 1

Compression:

Stored size: 1.38 KB

Contents

module Enginery
  ENVIRONMENTS = [:development, :test, :production].freeze
  DEFAULT_TEST_FRAMEWORK = :Specular
  DEFAULT_DB_TYPE = :sqlite
  INDENT = (' ' * 2).freeze
  KNOWN_WEB_SERVERS = %w[
    WEBrick
    Thin
    Unicorn
    Rainbows
    Puma
    Reel
    Mongrel
    FastCGI
    SCGI
  ].map(&:to_sym).freeze

  # using z_ prefix to make sure tracking table shown last
  # when some database management tools used.
  TRACKING_TABLE = :z_enginery_migrator_tracks
  TRACKING_TABLE__COLUMNS = [:migration, :performed_at, :vector].freeze
  TRACKING_TABLE__INDEXES = [:migration].freeze

  CONTROLLER_SUFFIX = '_controller.rb'.freeze
  ROUTE_SUFFIX      = '.rb'.freeze
  SPEC_SUFFIX       = '_spec.rb'.freeze
  MODEL_SUFFIX      = '.rb'.freeze
  MIGRATION_SUFFIX  = '.rb'.freeze
  HELPER_SUFFIX     = '.rb'.freeze
  ADMIN_SUFFIX      = '.rb'.freeze # suffix for Rear controllers

  ORM_IDENTITY_METHODS = {
    ActiveRecord: [:connection, :columns, :reflect_on_all_associations].freeze,
      DataMapper: [:repository, :properties, :relationships].freeze,
          Sequel: [:db_schema, :columns, :dataset].freeze
  }.freeze
  ORM_MATCHERS = Hash[ORM_IDENTITY_METHODS.keys.zip(ORM_IDENTITY_METHODS.keys.map{|x| Regexp.new(x.to_s, 'i')})]
  ORM_ASSOCIATIONS = [:belongs_to, :has_one, :has_many, :has_and_belongs_to_many].freeze
  
  EXECUTABLE = File.expand_path('../../../bin/enginery', __FILE__).freeze
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
my_enginery-0.2.8 lib/enginery/enginery.rb