Sha256: c48df6ab223973312a4ec03111fe9b19c013afa0a1c9fd54f557f3499eee2d3f

Contents?: true

Size: 917 Bytes

Versions: 4

Compression:

Stored size: 917 Bytes

Contents

require 'mysql'
require 'mongo'
require 'spec_helper'

describe Squealer::Database do

  before(:all) do
    @db_name = "test_export_#{object_id}"
    create_test_db(@db_name)
  end

  after(:all) do
    drop_test_db(@db_name)
  end

  it "is a singleton" do
    Squealer::Database.respond_to?(:instance).should be_true
  end

  it "takes an import database" do
    Squealer::Database.instance.import_from('localhost', 27017, @db_name)
    Squealer::Database.instance.import.should be_a_kind_of(Mongo::DB)
  end

  it "takes an export database" do
    Squealer::Database.instance.export_to('localhost', 'root', '', @db_name)
    Squealer::Database.instance.export.should be_a_kind_of(Mysql)
  end

  private

  def create_test_db(name)
    @my = Mysql.connect('localhost', 'root')
    @my.query("create database #{name}")
  end

  def drop_test_db(name)
    @my.query("drop database #{name}")
    @my.close
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
squealer-1.2.0 spec/squealer/database_spec.rb
squealer-1.0.2 spec/squealer/database_spec.rb
squealer-1.0.1 spec/squealer/database_spec.rb
squealer-1.0.0 spec/squealer/database_spec.rb