lib/mongration/create_migration/migration_file_writer.rb
module Mongration
class CreateMigration
# @private
class MigrationFileWriter
def self.write(file_name, options = {})
new(file_name, options).write
end
def initialize(file_name, options = {})
@file_name = file_name
@up = options[:up]
@down = options[:down]
end
def write
path = ::File.join(Mongration.configuration.dir, @file_name)
::File.open(path, 'w') do |file|
file.write(<<EOS
class #{class_name}
def self.up
#{@up}
end
def self.down
#{@down}
end
end
EOS
)
end
path
end
private
def class_name
File.new(@file_name).class_name
end
end
end
end