Sha256: b9bfeb7546cd8a6b4dcee0a8697041368c0b148e16901cdb30ec7623fdeb4229

Contents?: true

Size: 1.14 KB

Versions: 5

Compression:

Stored size: 1.14 KB

Contents

# frozen_string_literal: true

RSpec.describe Lokalise::Error do
  include Lokalise::Request

  before { Lokalise.reset_client! }

  after { Lokalise.reset_client! }

  it 'raises a generic error when the code is unknown' do
    expect do
      VCR.use_cassette('error_unknown_code') do
        get 'projects', Lokalise.client('invalid')
      end
    end.to raise_error(described_class)
  end

  it 'handles an exception when the response does not contain an error key' do
    expect do
      VCR.use_cassette('error_no_error_key') do
        get 'projects', Lokalise.client('invalid')
      end
    end.to raise_error(Lokalise::Error::BadRequest)
  end

  it 'raises BadRequest when API token is invalid' do
    expect do
      VCR.use_cassette('error_invalid_token') do
        get 'projects', Lokalise.client('invalid')
      end
    end.to raise_error(Lokalise::Error::BadRequest)
  end

  it 'raises NotFound when the provided path cannot be found' do
    expect do
      VCR.use_cassette('error_not_found') do
        get 'invalid_path', test_client
      end
    end.to raise_error(Lokalise::Error::NotFound)
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ruby-lokalise-api-5.0.0 spec/lib/ruby-lokalise-api/error_spec.rb
ruby-lokalise-api-4.5.1 spec/lib/ruby-lokalise-api/error_spec.rb
ruby-lokalise-api-4.5.0 spec/lib/ruby-lokalise-api/error_spec.rb
ruby-lokalise-api-4.4.0 spec/lib/ruby-lokalise-api/error_spec.rb
ruby-lokalise-api-4.3.1 spec/lib/ruby-lokalise-api/error_spec.rb