lce 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/.rspec +1 -0
  4. data/.ruby-gemset +1 -0
  5. data/.ruby-version +1 -0
  6. data/Gemfile +6 -0
  7. data/LICENSE +21 -0
  8. data/README.md +98 -0
  9. data/Rakefile +5 -0
  10. data/lce.gemspec +30 -0
  11. data/lib/lce.rb +72 -0
  12. data/lib/lce/client.rb +34 -0
  13. data/lib/lce/client/connection.rb +23 -0
  14. data/lib/lce/client/errors.rb +25 -0
  15. data/lib/lce/client/request.rb +80 -0
  16. data/lib/lce/offer.rb +25 -0
  17. data/lib/lce/order.rb +51 -0
  18. data/lib/lce/quote.rb +34 -0
  19. data/lib/lce/version.rb +4 -0
  20. data/lib/paginated_array.rb +25 -0
  21. data/spec/fixtures/access_denied +20 -0
  22. data/spec/fixtures/account_disabled +20 -0
  23. data/spec/fixtures/check +464 -0
  24. data/spec/fixtures/offers/available_delivery_locations/found +785 -0
  25. data/spec/fixtures/offers/find/found +66 -0
  26. data/spec/fixtures/offers/find/not_found +15 -0
  27. data/spec/fixtures/order_params +23 -0
  28. data/spec/fixtures/orders/all/page_1 +111 -0
  29. data/spec/fixtures/orders/find/found +106 -0
  30. data/spec/fixtures/orders/find/not_found +15 -0
  31. data/spec/fixtures/orders/labels/labels.pdf +0 -0
  32. data/spec/fixtures/orders/labels/response +0 -0
  33. data/spec/fixtures/orders/place/created +106 -0
  34. data/spec/fixtures/orders/place/empty_params +15 -0
  35. data/spec/fixtures/orders/place/missing_params +15 -0
  36. data/spec/fixtures/orders/tracking +30 -0
  37. data/spec/fixtures/quote_params +25 -0
  38. data/spec/fixtures/quotes/all/page_1 +11594 -0
  39. data/spec/fixtures/quotes/all/page_2 +1665 -0
  40. data/spec/fixtures/quotes/find/found +492 -0
  41. data/spec/fixtures/quotes/find/not_found +15 -0
  42. data/spec/fixtures/quotes/request/created +492 -0
  43. data/spec/fixtures/quotes/request/empty_quote +15 -0
  44. data/spec/fixtures/quotes/request/missing_params +15 -0
  45. data/spec/lce/client_spec.rb +41 -0
  46. data/spec/lce/offer_spec.rb +85 -0
  47. data/spec/lce/order_spec.rb +136 -0
  48. data/spec/lce/quote_spec.rb +111 -0
  49. data/spec/lce_spec.rb +109 -0
  50. data/spec/paginated_array_spec.rb +55 -0
  51. data/spec/spec_helper.rb +17 -0
  52. data/tasks/rspec.rake +3 -0
  53. metadata +239 -0
@@ -0,0 +1,55 @@
1
+ require 'spec_helper'
2
+
3
+ describe PaginatedArray do
4
+
5
+ subject{ PaginatedArray.new(80,2,25) }
6
+
7
+ describe '#total_count' do
8
+ it 'returns count' do
9
+ expect(subject.total_count).to eql(80)
10
+ end
11
+ end
12
+
13
+ describe '#current_page' do
14
+ it 'returns page number' do
15
+ expect(subject.current_page).to eql(2)
16
+ end
17
+ end
18
+
19
+ describe '#per_apge' do
20
+ it 'returns page size' do
21
+ expect(subject.per_page).to eql(25)
22
+ end
23
+ end
24
+
25
+ describe '#total_page' do
26
+ it 'calculates page count' do
27
+ expect(subject.total_page).to eql(4)
28
+ end
29
+ end
30
+
31
+ describe '#previous_page' do
32
+ it 'returns previous page number' do
33
+ expect(subject.previous_page).to eql(1)
34
+ end
35
+ context 'there is no previous page' do
36
+ subject{ PaginatedArray.new(80,1,25) }
37
+ it 'returns false' do
38
+ expect(subject.previous_page).to eql(false)
39
+ end
40
+ end
41
+ end
42
+
43
+ describe '#next_page' do
44
+ it 'returns next page number' do
45
+ expect(subject.next_page).to eql(3)
46
+ end
47
+ context 'there is no next page' do
48
+ subject{ PaginatedArray.new(80,4,25) }
49
+ it 'returns false' do
50
+ expect(subject.next_page).to eql(false)
51
+ end
52
+ end
53
+ end
54
+
55
+ end
@@ -0,0 +1,17 @@
1
+ require 'lce'
2
+ require 'rspec'
3
+ require 'webmock/rspec'
4
+
5
+ Lce.configure do |config|
6
+ config.logger.level = Logger::FATAL
7
+ end
8
+
9
+
10
+ def fixture_path
11
+ File.expand_path("../fixtures", __FILE__)
12
+ end
13
+
14
+ def fixture(file)
15
+ File.new(fixture_path + '/' + file)
16
+ end
17
+
@@ -0,0 +1,3 @@
1
+ require 'rspec/core/rake_task'
2
+
3
+ RSpec::Core::RakeTask.new(:spec)
metadata ADDED
@@ -0,0 +1,239 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: lce
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Florent Piteau
8
+ - Thomas Belliard
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2014-08-20 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bundler
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: '1.5'
21
+ type: :development
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: '1.5'
28
+ - !ruby/object:Gem::Dependency
29
+ name: rake
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: '0'
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
42
+ - !ruby/object:Gem::Dependency
43
+ name: rspec
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - "~>"
47
+ - !ruby/object:Gem::Version
48
+ version: '3.0'
49
+ type: :development
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - "~>"
54
+ - !ruby/object:Gem::Version
55
+ version: '3.0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: webmock
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: 1.18.0
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: 1.18.0
70
+ - !ruby/object:Gem::Dependency
71
+ name: faraday
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - "~>"
75
+ - !ruby/object:Gem::Version
76
+ version: '0.9'
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - "~>"
82
+ - !ruby/object:Gem::Version
83
+ version: '0.9'
84
+ - !ruby/object:Gem::Dependency
85
+ name: faraday_middleware
86
+ requirement: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - "~>"
89
+ - !ruby/object:Gem::Version
90
+ version: 0.9.1
91
+ type: :runtime
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - "~>"
96
+ - !ruby/object:Gem::Version
97
+ version: 0.9.1
98
+ - !ruby/object:Gem::Dependency
99
+ name: faraday_middleware-parse_oj
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - "~>"
103
+ - !ruby/object:Gem::Version
104
+ version: 0.3.0
105
+ type: :runtime
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - "~>"
110
+ - !ruby/object:Gem::Version
111
+ version: 0.3.0
112
+ - !ruby/object:Gem::Dependency
113
+ name: hashie
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - "~>"
117
+ - !ruby/object:Gem::Version
118
+ version: 3.2.0
119
+ type: :runtime
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - "~>"
124
+ - !ruby/object:Gem::Version
125
+ version: 3.2.0
126
+ description:
127
+ email:
128
+ - info@lce.io
129
+ executables: []
130
+ extensions: []
131
+ extra_rdoc_files: []
132
+ files:
133
+ - ".gitignore"
134
+ - ".rspec"
135
+ - ".ruby-gemset"
136
+ - ".ruby-version"
137
+ - Gemfile
138
+ - LICENSE
139
+ - README.md
140
+ - Rakefile
141
+ - lce.gemspec
142
+ - lib/lce.rb
143
+ - lib/lce/client.rb
144
+ - lib/lce/client/connection.rb
145
+ - lib/lce/client/errors.rb
146
+ - lib/lce/client/request.rb
147
+ - lib/lce/offer.rb
148
+ - lib/lce/order.rb
149
+ - lib/lce/quote.rb
150
+ - lib/lce/version.rb
151
+ - lib/paginated_array.rb
152
+ - spec/fixtures/access_denied
153
+ - spec/fixtures/account_disabled
154
+ - spec/fixtures/check
155
+ - spec/fixtures/offers/available_delivery_locations/found
156
+ - spec/fixtures/offers/find/found
157
+ - spec/fixtures/offers/find/not_found
158
+ - spec/fixtures/order_params
159
+ - spec/fixtures/orders/all/page_1
160
+ - spec/fixtures/orders/find/found
161
+ - spec/fixtures/orders/find/not_found
162
+ - spec/fixtures/orders/labels/labels.pdf
163
+ - spec/fixtures/orders/labels/response
164
+ - spec/fixtures/orders/place/created
165
+ - spec/fixtures/orders/place/empty_params
166
+ - spec/fixtures/orders/place/missing_params
167
+ - spec/fixtures/orders/tracking
168
+ - spec/fixtures/quote_params
169
+ - spec/fixtures/quotes/all/page_1
170
+ - spec/fixtures/quotes/all/page_2
171
+ - spec/fixtures/quotes/find/found
172
+ - spec/fixtures/quotes/find/not_found
173
+ - spec/fixtures/quotes/request/created
174
+ - spec/fixtures/quotes/request/empty_quote
175
+ - spec/fixtures/quotes/request/missing_params
176
+ - spec/lce/client_spec.rb
177
+ - spec/lce/offer_spec.rb
178
+ - spec/lce/order_spec.rb
179
+ - spec/lce/quote_spec.rb
180
+ - spec/lce_spec.rb
181
+ - spec/paginated_array_spec.rb
182
+ - spec/spec_helper.rb
183
+ - tasks/rspec.rake
184
+ homepage: http://lce.io/
185
+ licenses:
186
+ - MIT
187
+ metadata: {}
188
+ post_install_message:
189
+ rdoc_options: []
190
+ require_paths:
191
+ - lib
192
+ required_ruby_version: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - ">="
195
+ - !ruby/object:Gem::Version
196
+ version: '0'
197
+ required_rubygems_version: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ version: '0'
202
+ requirements: []
203
+ rubyforge_project:
204
+ rubygems_version: 2.2.2
205
+ signing_key:
206
+ specification_version: 4
207
+ summary: A Ruby library that provides an interface to the LCE web services.
208
+ test_files:
209
+ - spec/fixtures/access_denied
210
+ - spec/fixtures/account_disabled
211
+ - spec/fixtures/check
212
+ - spec/fixtures/offers/available_delivery_locations/found
213
+ - spec/fixtures/offers/find/found
214
+ - spec/fixtures/offers/find/not_found
215
+ - spec/fixtures/order_params
216
+ - spec/fixtures/orders/all/page_1
217
+ - spec/fixtures/orders/find/found
218
+ - spec/fixtures/orders/find/not_found
219
+ - spec/fixtures/orders/labels/labels.pdf
220
+ - spec/fixtures/orders/labels/response
221
+ - spec/fixtures/orders/place/created
222
+ - spec/fixtures/orders/place/empty_params
223
+ - spec/fixtures/orders/place/missing_params
224
+ - spec/fixtures/orders/tracking
225
+ - spec/fixtures/quote_params
226
+ - spec/fixtures/quotes/all/page_1
227
+ - spec/fixtures/quotes/all/page_2
228
+ - spec/fixtures/quotes/find/found
229
+ - spec/fixtures/quotes/find/not_found
230
+ - spec/fixtures/quotes/request/created
231
+ - spec/fixtures/quotes/request/empty_quote
232
+ - spec/fixtures/quotes/request/missing_params
233
+ - spec/lce/client_spec.rb
234
+ - spec/lce/offer_spec.rb
235
+ - spec/lce/order_spec.rb
236
+ - spec/lce/quote_spec.rb
237
+ - spec/lce_spec.rb
238
+ - spec/paginated_array_spec.rb
239
+ - spec/spec_helper.rb