module PersonDb

forward references

require first to resolve circular references

Constants

Models

note: for convenciene (and compatibility) add alias Models for Model namespace

e.g lets you use include PersonDb::Models
VERSION

Public Class Methods

banner() click to toggle source
create() click to toggle source
# File lib/persondb.rb, line 39
def self.create
  CreateDb.new.up

  Model::Prop.create!( key: 'db.schema.person.version', value: VERSION )
end
delete!() click to toggle source
# File lib/persondb.rb, line 45
def self.delete!
  ## fix/todo: move into deleter class (see worlddb,sportdb etc.)
  Model::Person.delete_all
end
root() click to toggle source
# File lib/persondb.rb, line 30
def self.root
  "#{File.expand_path( File.dirname(File.dirname(__FILE__)) )}"
end
setup_in_memory_db() click to toggle source
# File lib/persondb.rb, line 55
def self.setup_in_memory_db
  # Database Setup & Config

  ActiveRecord::Base.logger = Logger.new( STDOUT )
  ## ActiveRecord::Base.colorize_logging = false  - no longer exists - check new api/config setting?

  ## NB: every connect will create a new empty in memory db
  ActiveRecord::Base.establish_connection(
                                adapter:  'sqlite3',
                                database: ':memory:' )

  ## build schema
  LogDb.create
  ConfDb.create
  TagDb.create
  WorldDb.create
  PersonDb.create
end
tables() click to toggle source
# File lib/persondb.rb, line 50
def self.tables
  ## fix/todo: move into stats class (see worlddb,sportdb etc.)
  puts "  #{Model::Person.count} persons"
end
test_data_path() click to toggle source
# File lib/persondb.rb, line 34
def self.test_data_path
  "#{root}/test/data"
end