Sha256: 413602f7c1edfd4bdd93d29d4d253b9ba9a9e02a26894d10dafb8ff5c984a378

Contents?: true

Size: 923 Bytes

Versions: 4

Compression:

Stored size: 923 Bytes

Contents

require 'spec_helper'

describe Sumo do
  subject { Sumo }

  it { should be_a Module }

  describe '.search' do
    context 'when the credentials cannot be found' do
      before { ENV['SUMO_CREDS'] = nil }

      it 'raises an error' do
        expect { subject.search('anything') }
            .to raise_error(Sumo::Error::NoCredsFound)
      end
    end

    context 'when the credentials can be found' do
      before { ENV['SUMO_CREDS'] = 'aladdin@swipely.com:open sesame' }

      context 'but the query is invalid' do
        it 'raises an error', :vcr do
          expect { subject.search('Rails', options: { 'from' => 'never' }) }
              .to raise_error(Sumo::Error::RequestError)
        end
      end

      context 'and the query is valid' do
        it 'parses the response', :vcr do
          subject.search('rails').each { |str| str.should_not match(/_raw/) }
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sumo-search-0.1.1 spec/lib/sumo_spec.rb
sumo-search-0.1.0 spec/lib/sumo_spec.rb
sumo-search-0.0.2 spec/lib/sumo_spec.rb
sumo-search-0.0.1 spec/lib/sumo_spec.rb