Sha256: a61380dbe3927272e679946ead9a36f44d7b62ed17a821a44e7114e8738e2055
Contents?: true
Size: 1.03 KB
Versions: 22
Compression:
Stored size: 1.03 KB
Contents
require 'spec_helper' describe Dandelion::Adapter::Base do describe '#create_adapter' do it 'registers adapter classes' do class TestAdapter < Dandelion::Adapter::Base adapter :test end expect(Dandelion::Adapter::Base.create_adapter(:test)).to be_a(TestAdapter) end it 'raises error on invalid adapter' do expect { Dandelion::Adapter::Base.create_adapter(:another) }.to raise_error(Dandelion::Adapter::InvalidAdapterError) end it 'registers gem list' do class TestAdapter < Dandelion::Adapter::Base adapter :test requires_gems :foo, :bar end expect(TestAdapter.required_gems).to eq [:foo, :bar] end it 'catches load errors' do class TestAdapter < Dandelion::Adapter::Base adapter :test def initialize(options) raise LoadError end end expect { Dandelion::Adapter::Base.create_adapter(:test) }.to raise_error(Dandelion::Adapter::MissingDependencyError) end end end
Version data entries
22 entries across 22 versions & 1 rubygems