Class: Framework::MigrationGenerator::Context

Inherits:
Object
  • Object
show all
Defined in:
lib/framework/generators/migration_generator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(db_name, migration_name) ⇒ Context

Returns a new instance of Context.



36
37
38
39
40
# File 'lib/framework/generators/migration_generator.rb', line 36

def initialize(db_name, migration_name)
  @migration_name = migration_name.camelize
  @db_name = db_name.underscore
  validate!
end

Instance Attribute Details

#db_nameObject

Returns the value of attribute db_name.



34
35
36
# File 'lib/framework/generators/migration_generator.rb', line 34

def db_name
  @db_name
end

#migration_nameObject

Returns the value of attribute migration_name.



34
35
36
# File 'lib/framework/generators/migration_generator.rb', line 34

def migration_name
  @migration_name
end

Instance Method Details

#load_migrationsObject



46
47
48
49
50
# File 'lib/framework/generators/migration_generator.rb', line 46

def load_migrations
  Dir["./db/migrate/**/*.rb"].each(&method(:load))
rescue
  raise 'An error was occurred'
end

#template_bindingObject



42
43
44
# File 'lib/framework/generators/migration_generator.rb', line 42

def template_binding
  binding
end

#validate!Object



52
53
54
55
56
57
58
# File 'lib/framework/generators/migration_generator.rb', line 52

def validate!
  load_migrations
  Module.const_get(@migration_name)
  raise "Migration with the same name already exists"
rescue NameError
  true
end