class Spina::Admin::Conferences::Migration::Renaming::DuplicateMigrationsError

Constants

MIGRATION_REGEXP

Public Class Methods

new(migrations) click to toggle source
Calls superclass method
# File lib/spina/admin/conferences/migration/renaming.rb, line 36
def initialize(migrations)
  messages = migrations.collect { |migration| generate_message(migration) }
  super(messages.join("\n"))
end

Private Instance Methods

generate_message(migration) click to toggle source
# File lib/spina/admin/conferences/migration/renaming.rb, line 45
def generate_message(migration)
  old_version, old_scope = parse_filename(migration[:old][:file])
  messages = []
  messages << "#{File.basename(migration[:new][:file])} is a renamed version of #{File.basename(migration[:old][:file])}."
  messages << "Rename #{File.basename(migration[:old][:file])} to #{old_version}_#{migration[:new][:name]}.#{old_scope}.rb " \
              "and delete #{File.basename(migration[:new][:file])}."
  messages.join("\n")
end
parse_filename(filename) click to toggle source
# File lib/spina/admin/conferences/migration/renaming.rb, line 54
def parse_filename(filename)
  filename.scan(MIGRATION_REGEXP).first
end