Skip to content

Commit

Permalink
Fixes for RSpec 3
Browse files Browse the repository at this point in the history
  • Loading branch information
Nu-hin committed Jun 18, 2014
1 parent 76417a3 commit c701698
Show file tree
Hide file tree
Showing 10 changed files with 36 additions and 41 deletions.
6 changes: 3 additions & 3 deletions spec/lib/axiomus_api/base_spec.rb
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
require_relative '../../spec_helper'

describe 'AxiomusApi::Base' do
describe AxiomusApi::Base do

it 'should raise on wrong xml options' do
expect do
class C < AxiomusApi::Base
class C < described_class
xml_field :some_field, unknown_option: 21
end
end.to raise_error
end

it 'should raise if no tag name' do

class C < AxiomusApi::Base
class C < described_class
xml_field :value
end

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
require_relative '../../spec_helper'

describe 'AxiomusApi::Delivset' do
describe AxiomusApi::Delivset do

it 'should create below element' do
delivset = build(:delivset)
Expand Down
6 changes: 3 additions & 3 deletions spec/lib/axiomus_api/label_spec.rb
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
require_relative '../../spec_helper'

describe 'AxiomusApi::Label' do
describe AxiomusApi::Label do
it 'should generate barcode' do
@label = build(:label)
expect{barcode = @label_barcode64}.not_to raise_error
end

it 'should render single label' do
@label = build(:label)
expect{html = AxiomusApi::Label.render(@label)}.not_to raise_error
expect{html = described_class.render(@label)}.not_to raise_error
end

it 'should render multiple labels' do
@labels = (1..10).map{build(:label)}
expect{html = AxiomusApi::Label.render(@labels)}.not_to raise_error
expect{html = described_class.render(@labels)}.not_to raise_error
end
end
6 changes: 3 additions & 3 deletions spec/lib/axiomus_api/order/base_order_spec.rb
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
require_relative '../../../spec_helper'

describe 'AxiomusApi::BaseOrder' do
describe AxiomusApi::BaseOrder do

it 'should build order by mode' do
ORDER_MODES.each do |mode|
order = AxiomusApi::BaseOrder.create_by_mode(mode)
order = described_class.create_by_mode(mode)
end
end

it 'should create item' do
ORDER_MODES.each do |mode|
order = AxiomusApi::BaseOrder.create_by_mode(mode)
order = described_class.create_by_mode(mode)
item = order.items.add_item
item.quantity = 21
expect(order.items.item.first.quantity).to eq(21)
Expand Down
2 changes: 1 addition & 1 deletion spec/lib/axiomus_api/serializable_spec.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
require_relative '../../spec_helper'

describe 'AxiomusApi::Serializable' do
describe AxiomusApi::Serializable do

it 'should serialize value as text node' do

Expand Down
30 changes: 21 additions & 9 deletions spec/lib/axiomus_api/session_spec.rb
Original file line number Diff line number Diff line change
@@ -1,32 +1,44 @@
require_relative '../../spec_helper'

describe 'AxiomusApi::Session' do
describe AxiomusApi::Session do
before(:all) do
AxiomusApi.logger.level = Logger::UNKNOWN

@session = AxiomusApi.test_session
end

def enqueue_response(response_body, code = '200', msg='OK')
@responses ||= []
@responses.push([response_body, code, msg])

allow_any_instance_of(Net::HTTP).to receive(:request) do |req|
next_response = @responses.shift
response = Net::HTTPResponse.new(1.0, next_response[1], next_response[2])
allow(response).to receive(:body) {next_response[0]}
response
end
end

ORDER_MODES.each do |method|
order_class = order_factory_name(method)

describe "##{method}" do
it 'should handle successful request' do
HttpMocking.enqueue_response(DummyData.order_success_response(method))
enqueue_response(DummyData.order_success_response(method))
response = @session.send(method, build(order_class))
expect(response.code).to eq 0
end

it 'should raise on error' do
HttpMocking.enqueue_response(DummyData.order_error_response(method))
enqueue_response(DummyData.order_error_response(method))
expect{@session.send(method, build(order_class))}.to raise_error(AxiomusApi::Errors::RequestError)
end
end
end

describe '#get_regions' do
it 'should handle successfull request' do
HttpMocking.enqueue_response(DummyData::REGIONS_SUCCESS_RESPONSE)
enqueue_response(DummyData::REGIONS_SUCCESS_RESPONSE)
z = @session.get_regions()
expect(z.regions.count).to eq 1
expect(z.regions.first.code).to eq '21'
Expand All @@ -35,7 +47,7 @@

describe '#status' do
it 'should handle successfull request' do
HttpMocking.enqueue_response(DummyData::STATUS_SUCCESS_RESPONSE)
enqueue_response(DummyData::STATUS_SUCCESS_RESPONSE)
z = @session.status('2e3023c3e78f4f0c8cbb81257743c2d7')
expect(z.order.id).to eq('1013')
expect(z.order.inner_id).to eq('16777')
Expand All @@ -48,21 +60,21 @@

describe '#status_list' do
it 'should handle successfull request' do
HttpMocking.enqueue_response(DummyData::STATUS_LIST_SUCCESS_RESPONSE)
enqueue_response(DummyData::STATUS_LIST_SUCCESS_RESPONSE)
z = @session.status_list(['7bbf66349060b723bba20ef687ee4ebf', 'f2c2635a00310d39cf26b7cc1db6fab2'])
end
end

describe '#get_version' do
it 'should handle successfull request' do
HttpMocking.enqueue_response(DummyData::GET_VERSION_SUCCESS_RESPONSE)
enqueue_response(DummyData::GET_VERSION_SUCCESS_RESPONSE)
z = @session.get_version
expect(z).to eq('2.12')
end
end

it 'should accept a block' do
HttpMocking.enqueue_response(DummyData::REGIONS_SUCCESS_RESPONSE)
enqueue_response(DummyData::REGIONS_SUCCESS_RESPONSE)
res = nil

AxiomusApi.test_session do |s|
Expand All @@ -76,7 +88,7 @@
describe '#send_order_request' do
it 'should raise on invalid order' do
order = build(:dpd_order, :without_address)
HttpMocking.enqueue_response(DummyData.order_success_response(:new_dpd))
enqueue_response(DummyData.order_success_response(:new_dpd))
expect{@session.send_order_request(:new_dpd, order)}.to raise_error(AxiomusApi::Errors::ValidationError)
end
end
Expand Down
2 changes: 1 addition & 1 deletion spec/lib/axiomus_api/validated_spec.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
require_relative '../../spec_helper'

describe 'AxiomusApi::Validated' do
describe AxiomusApi::Validated do

it 'should validate required fields' do
address = build(:dpd_address, :without_region)
Expand Down
4 changes: 2 additions & 2 deletions spec/lib/axiomus_api_spec.rb
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
require_relative '../spec_helper'

describe 'AxiomusApi' do
describe AxiomusApi do
it 'should assign logger' do
AxiomusApi.logger = Logger.new($stdout)
described_class.logger = Logger.new($stdout)
end
end
2 changes: 1 addition & 1 deletion spec/spec_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

RSpec.configure do |config|
config.include FactoryGirl::Syntax::Methods
config.mock_with :rspec
end

ORDER_MODES = [:new, :update, :new_carry, :update_carry, :new_export, :update_export,
Expand All @@ -24,5 +25,4 @@ def order_factory_name(order_mode)

require_relative '../lib/axiomus_api.rb'
require_relative 'support/dummy_data.rb'
require_relative 'support/http_mocking.rb'
require_relative 'factories.rb'
17 changes: 0 additions & 17 deletions spec/support/http_mocking.rb

This file was deleted.

0 comments on commit c701698

Please sign in to comment.