axiomus_api 0.4 → 0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +16 -16
- data/README.md +1 -1
- data/lib/axiomus_api/order/dpd_order.rb +3 -3
- data/lib/axiomus_api/order/ems_order.rb +2 -2
- data/lib/axiomus_api/services/dpd_services.rb +7 -0
- data/lib/axiomus_api/services/ems_services.rb +7 -0
- data/lib/axiomus_api/services/post_services.rb +1 -1
- data/lib/axiomus_api/version.rb +1 -1
- data/spec/factories.rb +24 -5
- data/spec/integration/lib/axiomus_api/session_spec.rb +30 -28
- data/spec/lib/axiomus_api/order/base_order_spec.rb +2 -2
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4985a26f843b94c45d279f4ef559d020c331b08f
|
4
|
+
data.tar.gz: 2f5540a9db4576d29180baaedfd0fd1fa9eedc2d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
+
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.
|
12
|
+
activesupport (4.1.1)
|
13
13
|
i18n (~> 0.6, >= 0.6.9)
|
14
|
-
|
15
|
-
|
14
|
+
json (~> 1.7, >= 1.7.7)
|
15
|
+
minitest (~> 5.1)
|
16
16
|
thread_safe (~> 0.1)
|
17
|
-
tzinfo (~>
|
18
|
-
atomic (1.1.16)
|
17
|
+
tzinfo (~> 1.1)
|
19
18
|
barby (0.5.1)
|
20
|
-
chunky_png (1.3.
|
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.
|
36
|
-
minitest (
|
37
|
-
multi_json (1.
|
38
|
-
nokogiri (1.6.1)
|
39
|
-
mini_portile (
|
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.
|
59
|
-
|
60
|
-
|
61
|
-
|
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
|
+
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/
|
3
|
+
require_relative('../services/dpd_services')
|
4
4
|
|
5
5
|
class AxiomusApi::DpdOrder < AxiomusApi::BaseOrder
|
6
6
|
|
7
|
-
xml_attribute :
|
8
|
-
xml_field :services, type: AxiomusApi::
|
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/
|
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::
|
10
|
+
xml_field :services, type: AxiomusApi::EmsServices
|
11
11
|
|
12
12
|
end
|
data/lib/axiomus_api/version.rb
CHANGED
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(:
|
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(:
|
250
|
+
services {build(:dpd_services)}
|
232
251
|
address {build(:dpd_address)}
|
233
|
-
|
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
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
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
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
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
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
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::
|
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::
|
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
|
+
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-
|
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
|