Skip to content

Instantly share code, notes, and snippets.

@kalleth
Created June 27, 2013 15:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kalleth/7c22a64e4e5860b5122a to your computer and use it in GitHub Desktop.
Save kalleth/7c22a64e4e5860b5122a to your computer and use it in GitHub Desktop.
Testdb after refactor
require 'data_mapper'
module TestDatabase
# XXX This will need refactoring when >1 format is used.
TEST_DATABASE_CONNECTION_STRING = "mysql://root@127.0.0.1:3306/forum2discourse_test"
def self.prepare
DataMapper::Logger.new($stdout, :info)
DataMapper.setup(:test, TEST_DATABASE_CONNECTION_STRING)
execute_queries_from(categories_sql)
execute_queries_from(posts_sql)
end
def self.execute_queries_from(sql)
# Datamapper won't execute queries containing ';'
categories_sql.split(';').each do |statement|
next if statement.chomp.empty?
begin
DataMapper.repository(:test).adapter.execute(statement)
rescue DataObjects::SQLError
puts "Failed with statement: "
puts statement.inspect
raise
end
end
end
def self.categories_sql
File.open("#{RSPEC_ROOT}/test_data/categories.sql", 'r') { |f| f.read }
end
def self.posts_sql
File.open("#{RSPEC_ROOT}/test_data/posts.sql", 'r') { |f| f.read }
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment