axiomus_api 0.4 → 0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3e07c90ada20d4d8317aca5cba92d3d3d79781f5
4
- data.tar.gz: 1e830f91d74db9fff95e2747e7e5eb04c502aa93
3
+ metadata.gz: 4985a26f843b94c45d279f4ef559d020c331b08f
4
+ data.tar.gz: 2f5540a9db4576d29180baaedfd0fd1fa9eedc2d
5
5
  SHA512:
6
- metadata.gz: 0b22f978c6fe2551224c279ea07b6e36682d94656dee9744e92ff5194d5d918178956fdb58b3a2f1f02ea860a20c7e3d25acc42d51e3e59a7a53d626aecfaa62
7
- data.tar.gz: 6ff41ce49692794bbc51078b2b6552172f36628b5316b1791819fae953cbb63109c76d861155127796133e45815110ca1656cfed2f0e835e805e4f4f55ee0378
6
+ metadata.gz: d9e05e9f5fe0b42853b6e51a7023b45d169a11367f5dd73ea3970b88564e5bfc3df07eecb4136a390dfcef3a83f6c2758842fe550f1da4a160fdc967b97046e7
7
+ data.tar.gz: 8c7033b6789cb9ffe8e265fe29dd5524e0e56f43df1278b77dac3ddf9792b606f4c3edb220853c73700bb4c8a03f19281e4311743b93b51593eb058bb495c6bc
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- axiomus_api (0.4)
4
+ axiomus_api (0.5)
5
5
  barby (~> 0.5)
6
6
  chunky_png (~> 1.3)
7
7
  nokogiri (~> 1.6)
@@ -9,15 +9,14 @@ PATH
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- activesupport (4.0.4)
12
+ activesupport (4.1.1)
13
13
  i18n (~> 0.6, >= 0.6.9)
14
- minitest (~> 4.2)
15
- multi_json (~> 1.3)
14
+ json (~> 1.7, >= 1.7.7)
15
+ minitest (~> 5.1)
16
16
  thread_safe (~> 0.1)
17
- tzinfo (~> 0.3.37)
18
- atomic (1.1.16)
17
+ tzinfo (~> 1.1)
19
18
  barby (0.5.1)
20
- chunky_png (1.3.0)
19
+ chunky_png (1.3.1)
21
20
  coveralls (0.7.0)
22
21
  multi_json (~> 1.3)
23
22
  rest-client
@@ -31,12 +30,13 @@ GEM
31
30
  faker (1.3.0)
32
31
  i18n (~> 0.5)
33
32
  i18n (0.6.9)
33
+ json (1.8.1)
34
34
  mime-types (2.2)
35
- mini_portile (0.5.3)
36
- minitest (4.7.5)
37
- multi_json (1.9.2)
38
- nokogiri (1.6.1)
39
- mini_portile (~> 0.5.0)
35
+ mini_portile (0.6.0)
36
+ minitest (5.3.4)
37
+ multi_json (1.10.0)
38
+ nokogiri (1.6.2.1)
39
+ mini_portile (= 0.6.0)
40
40
  rest-client (1.6.7)
41
41
  mime-types (>= 1.16)
42
42
  rspec (2.14.1)
@@ -55,10 +55,10 @@ GEM
55
55
  term-ansicolor (1.3.0)
56
56
  tins (~> 1.0)
57
57
  thor (0.19.1)
58
- thread_safe (0.3.1)
59
- atomic (>= 1.1.7, < 2)
60
- tins (1.0.1)
61
- tzinfo (0.3.39)
58
+ thread_safe (0.3.3)
59
+ tins (1.3.0)
60
+ tzinfo (1.1.0)
61
+ thread_safe (~> 0.1)
62
62
 
63
63
  PLATFORMS
64
64
  ruby
data/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  This is a Ruby wrapper over [Axiomus](http://www.axiomus.ru "axiomus.ru") delivery service public [API](http://www.axiomus.ru/customers/api/ "Axiomus API").
12
12
 
13
- All methods exposed by the API v. 2.13 are implemented.
13
+ All methods exposed by the API v. 2.14 are implemented.
14
14
 
15
15
  ## Installation
16
16
 
@@ -1,11 +1,11 @@
1
1
  require_relative('base_order')
2
2
  require_relative('../address/dpd_address')
3
- require_relative('../services/post_services')
3
+ require_relative('../services/dpd_services')
4
4
 
5
5
  class AxiomusApi::DpdOrder < AxiomusApi::BaseOrder
6
6
 
7
- xml_attribute :d_date, :b_time, :e_time, :post_type
8
- xml_field :services, type: AxiomusApi::PostServices
7
+ xml_attribute :b_date, :b_time, :e_time, :post_type
8
+ xml_field :services, type: AxiomusApi::DpdServices
9
9
  xml_field :address, type: AxiomusApi::DpdAddress
10
10
 
11
11
  end
@@ -1,12 +1,12 @@
1
1
  require_relative 'base_order'
2
2
  require_relative '../address/ems_address'
3
- require_relative '../services/post_services'
3
+ require_relative '../services/ems_services'
4
4
 
5
5
  class AxiomusApi::EmsOrder < AxiomusApi::BaseOrder
6
6
 
7
7
  xml_attribute :b_date
8
8
  xml_attribute :incl_deliv_sum, optional: true
9
9
  xml_field :address, type: AxiomusApi::EmsAddress
10
- xml_field :services, type: AxiomusApi::PostServices
10
+ xml_field :services, type: AxiomusApi::EmsServices
11
11
 
12
12
  end
@@ -0,0 +1,7 @@
1
+ require_relative '../base'
2
+
3
+ class AxiomusApi::DpdServices < AxiomusApi::Base
4
+
5
+ xml_attribute :valuation, :fragile, :cod, :big, :waiting, optional: true
6
+
7
+ end
@@ -0,0 +1,7 @@
1
+ require_relative '../base'
2
+
3
+ class AxiomusApi::EmsServices < AxiomusApi::Base
4
+
5
+ xml_attribute :valuation, :fragile, :cod, :big, optional: true
6
+
7
+ end
@@ -2,6 +2,6 @@ require_relative '../base'
2
2
 
3
3
  class AxiomusApi::PostServices < AxiomusApi::Base
4
4
 
5
- xml_attribute :valuation, :fragile, :cod, :big, optional: true
5
+ xml_attribute :valuation, :fragile, :cod, :big, :class1, :post_tarif, :not_avia, :optimize, optional: true
6
6
 
7
7
  end
@@ -1,3 +1,3 @@
1
1
  module AxiomusApi
2
- VERSION = '0.4'
2
+ VERSION = '0.5'
3
3
  end
data/spec/factories.rb CHANGED
@@ -71,6 +71,25 @@ FactoryGirl.define do
71
71
  fragile {generate :boolean}
72
72
  cod {generate :boolean}
73
73
  big {generate :boolean}
74
+ class1 {generate :boolean}
75
+ post_tarif {generate :boolean}
76
+ not_avia {generate :boolean}
77
+ optimize {generate :boolean}
78
+ end
79
+
80
+ factory :dpd_services, class: AxiomusApi::DpdServices do
81
+ valuation {generate :boolean}
82
+ fragile {generate :boolean}
83
+ cod {generate :boolean}
84
+ big {generate :boolean}
85
+ waiting {generate :boolean}
86
+ end
87
+
88
+ factory :ems_services, class: AxiomusApi::EmsServices do
89
+ valuation {generate :boolean}
90
+ fragile {generate :boolean}
91
+ cod {generate :boolean}
92
+ big {generate :boolean}
74
93
  end
75
94
 
76
95
  factory :region_services, class: AxiomusApi::RegionServices do
@@ -185,7 +204,7 @@ FactoryGirl.define do
185
204
 
186
205
  factory :self_export_order, class: AxiomusApi::SelfExportOrder, parent: :base_order do
187
206
  car 'с065мк61'
188
- d_date {Time.now + rand(1..10)*24*60*60}
207
+ d_date {(Time.now + rand(1..10)*24*60*60).strftime('%Y-%m-%d')}
189
208
  b_time {rand(10..19)}
190
209
  e_time {b_time + 3}
191
210
  quantity {rand(1..3)}
@@ -193,7 +212,7 @@ FactoryGirl.define do
193
212
  end
194
213
 
195
214
  factory :post_order, class: AxiomusApi::PostOrder, parent: :base_order do
196
- b_date {Time.now + rand(1..10)*24*60*60}
215
+ b_date {(Time.now + rand(1..10)*24*60*60).strftime('%Y-%m-%d')}
197
216
  post_type {rand(1..2)}
198
217
  address {build(:post_address)}
199
218
  services {build(:post_services)}
@@ -207,7 +226,7 @@ FactoryGirl.define do
207
226
  factory :ems_order, class: AxiomusApi::EmsOrder, parent: :base_order do
208
227
  b_date {Time.now + rand(1..10)*24*60*60}
209
228
  address {build(:ems_address)}
210
- services {build(:post_services)}
229
+ services {build(:ems_services)}
211
230
  contacts {generate(:sms)}
212
231
  end
213
232
 
@@ -228,9 +247,9 @@ FactoryGirl.define do
228
247
 
229
248
  factory :dpd_order, class: AxiomusApi::DpdOrder, parent: :base_order do
230
249
  post_type {rand(1..2)}
231
- services {build(:post_services)}
250
+ services {build(:dpd_services)}
232
251
  address {build(:dpd_address)}
233
- d_date {(Time.now + rand(5..15)*24*60*60).strftime('%Y-%m-%d')}
252
+ b_date {(Time.now + rand(5..15)*24*60*60).strftime('%Y-%m-%d')}
234
253
  b_time {rand(10..17)}
235
254
  e_time {b_time + 1}
236
255
 
@@ -13,23 +13,25 @@ describe 'AxiomusApi::Sesion' do
13
13
  end
14
14
  end
15
15
 
16
- # describe '#status_list' do
17
- # it 'should handle multiple okeys' do
18
- # order = build(:order)
19
- # z1 = @session.new(order)
20
- # order = build(:order)
21
- # z2 = @session.new(order)
22
- # r = @session.status_list([z1.okey, z2.okey])
23
- # puts r
24
- # end
25
- # end
16
+ describe '#status_list' do
17
+ it 'should handle multiple okeys' do
18
+ expect do
19
+ order = build(:order)
20
+ z1 = @session.new(order)
21
+ order = build(:order)
22
+ z2 = @session.new(order)
23
+ r = @session.status_list([z1.okey, z2.okey])
24
+ end.not_to raise_error
25
+ end
26
+ end
26
27
 
27
- # describe '#get_version' do
28
- # it 'should return version' do
29
- # version = @session.get_version
30
- # puts version
31
- # end
32
- # end
28
+ describe '#get_version' do
29
+ it 'should return version' do
30
+ expect do
31
+ version = @session.get_version
32
+ end.not_to raise_error
33
+ end
34
+ end
33
35
 
34
36
  describe '#new, #update' do
35
37
  it 'should create new order and update it' do
@@ -131,18 +133,18 @@ describe 'AxiomusApi::Sesion' do
131
133
  end
132
134
  end
133
135
 
134
- describe '#new_ems, #update_ems' do
135
- it 'should create new order and update it' do
136
- ems_order = build(:ems_order)
137
- z = @session.new_ems(ems_order)
138
- expect(z.code).to eq 0
139
- okey = z.okey
140
- ems_order.okey = okey
141
- z = @session.update_ems(ems_order)
142
- expect(z.code).to eq 0
143
- z = @session.status(okey)
144
- end
145
- end
136
+ # describe '#new_ems, #update_ems' do
137
+ # it 'should create new order and update it' do
138
+ # ems_order = build(:ems_order)
139
+ # z = @session.new_ems(ems_order)
140
+ # expect(z.code).to eq 0
141
+ # okey = z.okey
142
+ # ems_order.okey = okey
143
+ # z = @session.update_ems(ems_order)
144
+ # expect(z.code).to eq 0
145
+ # z = @session.status(okey)
146
+ # end
147
+ # end
146
148
 
147
149
  describe '#new_region_courier, #update_region_courier' do
148
150
  it 'should create new order and update it' do
@@ -41,13 +41,13 @@ end
41
41
 
42
42
  {
43
43
  AxiomusApi::Order => AxiomusApi::Services,
44
- AxiomusApi::EmsOrder => AxiomusApi::PostServices,
44
+ AxiomusApi::EmsOrder => AxiomusApi::EmsServices,
45
45
  AxiomusApi::ExportOrder => AxiomusApi::ExportServices,
46
46
  AxiomusApi::CarryOrder => AxiomusApi::Services,
47
47
  AxiomusApi::PostOrder => AxiomusApi::PostServices,
48
48
  AxiomusApi::RegionCourierOrder => AxiomusApi::RegionServices,
49
49
  AxiomusApi::RegionPickupOrder => AxiomusApi::RegionServices,
50
- AxiomusApi::DpdOrder => AxiomusApi::PostServices
50
+ AxiomusApi::DpdOrder => AxiomusApi::DpdServices
51
51
  }.each do |c, a|
52
52
  describe c.name do
53
53
  it 'should have correct services type' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: axiomus_api
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.4'
4
+ version: '0.5'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kinderly LTD
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-04 00:00:00.000000000 Z
11
+ date: 2014-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
@@ -107,6 +107,8 @@ files:
107
107
  - lib/axiomus_api/response/version_response.rb
108
108
  - lib/axiomus_api/response_codes.rb
109
109
  - lib/axiomus_api/serializable.rb
110
+ - lib/axiomus_api/services/dpd_services.rb
111
+ - lib/axiomus_api/services/ems_services.rb
110
112
  - lib/axiomus_api/services/export_services.rb
111
113
  - lib/axiomus_api/services/post_services.rb
112
114
  - lib/axiomus_api/services/region_services.rb