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 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