Sha256: ddc74bbc321802e0ca3e51dbf15af84877f47091b26f9b41e5ae67456647db2f
Contents?: true
Size: 1.49 KB
Versions: 3
Compression:
Stored size: 1.49 KB
Contents
require 'spec_helper' require 'rom/lint/spec' describe ROM::SQL::Gateway do include_context 'users and tasks' let(:gateway) { container.gateways[:default] } it_behaves_like 'a rom gateway' do let(:identifier) { :sql } let(:gateway) { ROM::SQL::Gateway } let(:uri) { DB_URI } end describe '#dataset?' do it 'returns true if a table exists' do expect(gateway.dataset?(:users)).to be(true) end it 'returns false if a table does not exist' do expect(gateway.dataset?(:not_here)).to be(false) end end describe 'using options' do it 'allows custom sequel-specific options' do migrator = double('migrator') expect(Sequel).to receive(:connect) .with(DB_URI, host: '127.0.0.1') .and_return(conn) gateway = ROM::SQL::Gateway.new(DB_URI, migrator: migrator, host: '127.0.0.1') expect(gateway.options).to eql(migrator: migrator) end it 'allows extensions' do extensions = [:pg_array, :pg_enum] connection = Sequel.connect uri expect(connection).to receive(:extension).with(:pg_array, :pg_enum) ROM::SQL::Gateway.new(connection, extensions: extensions) end end describe '#disconnect' do let(:gateway) { ROM::SQL::Gateway.new(uri) } it 'disconnects via sequel connection' do # FIXME: no idea how to test it in a different way # FIXME: we are leaking connection here expect(gateway.connection).to receive(:disconnect) gateway.disconnect end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rom-sql-0.7.0 | spec/unit/gateway_spec.rb |
rom-sql-0.7.0.rc1 | spec/unit/gateway_spec.rb |
rom-sql-0.7.0.beta1 | spec/unit/gateway_spec.rb |