Sha256: 962c4c503f700f6da3ef3d3ef85bc46bba86ac8b4c4972be72eda58954fe034b

Contents?: true

Size: 1.14 KB

Versions: 2

Compression:

Stored size: 1.14 KB

Contents

require 'spec_helper'

describe ROM::Adapter do
  subject(:adapter) { rom.postgres.adapter }

  let(:setup) { ROM.setup(postgres: 'postgres://localhost/rom') }
  let(:rom) { setup.finalize }

  describe 'setting up' do
    it 'works with database.yml-style hash' do
      setup = ROM.setup(adapter: 'postgres', database: 'rom')
      expect(setup[:default]).to eql(setup.repositories[:default])
    end

    it 'accepts additional options' do
      test = false

      setup = ROM.setup(
        adapter: 'postgres',
        database: 'rom',
        test: true,
        after_connect: proc { test = true }
      )

      setup.finalize

      expect(test).to be(true)
    end
  end

  describe '#dataset?' do
    it 'returns true if a table exists' do
      expect(adapter.dataset?(:users)).to be(true)
    end

    it 'returns false if a table does not exist' do
      expect(adapter.dataset?(:not_here)).to be(false)
    end
  end

  describe '#disconnect' do
    it 'disconnects via sequel connection' do
      # FIXME: no idea how to test it in a different way
      expect(adapter.connection).to receive(:disconnect)
      adapter.disconnect
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rom-sql-0.3.2 spec/unit/adapter_spec.rb
rom-sql-0.3.1 spec/unit/adapter_spec.rb