Sha256: 80c321f0af1be4cb12535ed0b9c40077ce37a97fce4ebd85fbd4f7bd99d32a04

Contents?: true

Size: 1.14 KB

Versions: 3

Compression:

Stored size: 1.14 KB

Contents

require 'assert'
require 'ardb/adapter/base'

class Ardb::Adapter::Base

  class BaseTests < Assert::Context
    desc "Ardb::Adapter::Base"
    setup do
      @adapter = Ardb::Adapter::Base.new
    end
    subject { @adapter }

    should have_reader :config_settings, :database
    should have_imeths :foreign_key_add_sql, :foreign_key_drop_sql
    should have_imeths :create_db, :drop_db

    should "use the config's db settings " do
      assert_equal Ardb.config.db.to_hash, subject.config_settings
    end

    should "use the config's database" do
      assert_equal Ardb.config.db.database, subject.database
    end

    should "not implement the foreign key sql meths" do
      assert_raises(NotImplementedError) { subject.foreign_key_add_sql }
      assert_raises(NotImplementedError) { subject.foreign_key_drop_sql }
    end

    should "not implement the create and drop db methods" do
      assert_raises(NotImplementedError) { subject.create_db }
      assert_raises(NotImplementedError) { subject.drop_db }
    end

    should "not implement the drop table methods" do
      assert_raises(NotImplementedError) { subject.drop_tables }
    end

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
ardb-0.3.0 test/unit/adapter/base_tests.rb
ardb-0.2.0 test/unit/adapter/base_tests.rb
ardb-0.1.0 test/unit/adapter/base_tests.rb