xeroizer 0.3.5 → 0.4.0

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.
Files changed (54) hide show
  1. data/.bundle/config +2 -2
  2. data/Gemfile +5 -0
  3. data/Rakefile +17 -1
  4. data/VERSION +1 -1
  5. data/lib/xeroizer.rb +5 -1
  6. data/lib/xeroizer/configuration.rb +19 -0
  7. data/lib/xeroizer/generic_application.rb +2 -1
  8. data/lib/xeroizer/logging.rb +8 -0
  9. data/lib/xeroizer/models/account.rb +2 -1
  10. data/lib/xeroizer/models/bank_account.rb +12 -0
  11. data/lib/xeroizer/models/bank_transaction.rb +74 -0
  12. data/lib/xeroizer/models/invoice.rb +17 -12
  13. data/lib/xeroizer/models/item.rb +3 -3
  14. data/lib/xeroizer/models/item_purchase_details.rb +19 -0
  15. data/lib/xeroizer/models/{item_purchase_sale_details.rb → item_sales_details.rb} +5 -3
  16. data/lib/xeroizer/models/line_amount_type.rb +11 -0
  17. data/lib/xeroizer/models/line_item.rb +2 -12
  18. data/lib/xeroizer/models/line_item_sum.rb +21 -0
  19. data/lib/xeroizer/models/payment.rb +2 -6
  20. data/lib/xeroizer/oauth.rb +1 -1
  21. data/lib/xeroizer/record/base.rb +21 -2
  22. data/lib/xeroizer/record/validation_helper.rb +14 -2
  23. data/lib/xeroizer/record/validators/block_validator.rb +22 -0
  24. data/lib/xeroizer/record/validators/validator.rb +14 -5
  25. data/lib/xeroizer/record/xml_helper.rb +24 -7
  26. data/test/acceptance/about_creating_bank_transactions_test.rb +162 -0
  27. data/test/acceptance/about_fetching_bank_transactions_test.rb +56 -0
  28. data/test/acceptance/acceptance_test.rb +53 -0
  29. data/test/acceptance/bank_transaction_reference_data.rb +31 -0
  30. data/test/test_helper.rb +11 -1
  31. data/test/unit/models/bank_transaction_model_parsing_test.rb +131 -0
  32. data/test/unit/models/bank_transaction_test.rb +47 -0
  33. data/test/unit/models/bank_transaction_validation_test.rb +87 -0
  34. data/test/unit/models/contact_test.rb +2 -2
  35. data/test/unit/models/credit_note_test.rb +2 -2
  36. data/test/unit/models/invoice_test.rb +43 -17
  37. data/test/unit/models/line_item_sum_test.rb +24 -0
  38. data/test/unit/models/line_item_test.rb +54 -0
  39. data/test/unit/oauth_config_test.rb +20 -0
  40. data/test/unit/oauth_test.rb +1 -1
  41. data/test/unit/private_application_test.rb +2 -2
  42. data/test/unit/record/base_model_test.rb +2 -2
  43. data/test/unit/record/base_test.rb +38 -1
  44. data/test/unit/record/block_validator_test.rb +125 -0
  45. data/test/unit/record/model_definition_test.rb +2 -2
  46. data/test/unit/record/parse_where_hash_test.rb +2 -2
  47. data/test/unit/record/record_association_test.rb +1 -1
  48. data/test/unit/record/validators_test.rb +51 -3
  49. data/test/unit/record_definition_test.rb +2 -2
  50. data/test/unit/report_definition_test.rb +2 -2
  51. data/test/unit/report_test.rb +1 -1
  52. data/xeroizer.gemspec +60 -6
  53. metadata +124 -66
  54. data/lib/.DS_Store +0 -0
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xeroizer
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
5
- prerelease:
4
+ prerelease: false
6
5
  segments:
7
6
  - 0
8
- - 3
9
- - 5
10
- version: 0.3.5
7
+ - 4
8
+ - 0
9
+ segments_generated: true
10
+ version: 0.4.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Wayne Robinson
@@ -15,157 +15,173 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-06-27 00:00:00 +10:00
18
+ date: 2012-02-10 00:00:00 +10:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
+ prerelease: false
22
23
  name: builder
24
+ type: :runtime
23
25
  version_requirements: &id001 !ruby/object:Gem::Requirement
24
- none: false
25
26
  requirements:
26
27
  - - ">="
27
28
  - !ruby/object:Gem::Version
28
- hash: 15
29
29
  segments:
30
30
  - 2
31
31
  - 1
32
32
  - 2
33
+ segments_generated: true
33
34
  version: 2.1.2
34
- prerelease: false
35
- type: :runtime
36
35
  requirement: *id001
37
36
  - !ruby/object:Gem::Dependency
37
+ prerelease: false
38
38
  name: oauth
39
+ type: :runtime
39
40
  version_requirements: &id002 !ruby/object:Gem::Requirement
40
- none: false
41
41
  requirements:
42
42
  - - ">="
43
43
  - !ruby/object:Gem::Version
44
- hash: 31
45
44
  segments:
46
45
  - 0
47
46
  - 3
48
47
  - 6
48
+ segments_generated: true
49
49
  version: 0.3.6
50
- prerelease: false
51
- type: :runtime
52
50
  requirement: *id002
53
51
  - !ruby/object:Gem::Dependency
52
+ prerelease: false
54
53
  name: activesupport
54
+ type: :runtime
55
55
  version_requirements: &id003 !ruby/object:Gem::Requirement
56
- none: false
57
56
  requirements:
58
57
  - - ">="
59
58
  - !ruby/object:Gem::Version
60
- hash: 3
61
59
  segments:
62
60
  - 0
61
+ segments_generated: true
63
62
  version: "0"
64
- prerelease: false
65
- type: :runtime
66
63
  requirement: *id003
67
64
  - !ruby/object:Gem::Dependency
65
+ prerelease: false
68
66
  name: nokogiri
67
+ type: :runtime
69
68
  version_requirements: &id004 !ruby/object:Gem::Requirement
70
- none: false
71
69
  requirements:
72
70
  - - ">="
73
71
  - !ruby/object:Gem::Version
74
- hash: 3
75
72
  segments:
76
73
  - 0
74
+ segments_generated: true
77
75
  version: "0"
76
+ requirement: *id004
77
+ - !ruby/object:Gem::Dependency
78
78
  prerelease: false
79
+ name: i18n
79
80
  type: :runtime
80
- requirement: *id004
81
+ version_requirements: &id005 !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ segments:
86
+ - 0
87
+ segments_generated: true
88
+ version: "0"
89
+ requirement: *id005
90
+ - !ruby/object:Gem::Dependency
91
+ prerelease: false
92
+ name: yard
93
+ type: :runtime
94
+ version_requirements: &id006 !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ segments:
99
+ - 0
100
+ segments_generated: true
101
+ version: "0"
102
+ requirement: *id006
81
103
  - !ruby/object:Gem::Dependency
104
+ prerelease: false
82
105
  name: builder
83
- version_requirements: &id005 !ruby/object:Gem::Requirement
84
- none: false
106
+ type: :runtime
107
+ version_requirements: &id007 !ruby/object:Gem::Requirement
85
108
  requirements:
86
109
  - - ">="
87
110
  - !ruby/object:Gem::Version
88
- hash: 15
89
111
  segments:
90
112
  - 2
91
113
  - 1
92
114
  - 2
115
+ segments_generated: true
93
116
  version: 2.1.2
94
- prerelease: false
95
- type: :runtime
96
- requirement: *id005
117
+ requirement: *id007
97
118
  - !ruby/object:Gem::Dependency
119
+ prerelease: false
98
120
  name: oauth
99
- version_requirements: &id006 !ruby/object:Gem::Requirement
100
- none: false
121
+ type: :runtime
122
+ version_requirements: &id008 !ruby/object:Gem::Requirement
101
123
  requirements:
102
124
  - - ">="
103
125
  - !ruby/object:Gem::Version
104
- hash: 31
105
126
  segments:
106
127
  - 0
107
128
  - 3
108
129
  - 6
130
+ segments_generated: true
109
131
  version: 0.3.6
110
- prerelease: false
111
- type: :runtime
112
- requirement: *id006
132
+ requirement: *id008
113
133
  - !ruby/object:Gem::Dependency
134
+ prerelease: false
114
135
  name: activesupport
115
- version_requirements: &id007 !ruby/object:Gem::Requirement
116
- none: false
136
+ type: :runtime
137
+ version_requirements: &id009 !ruby/object:Gem::Requirement
117
138
  requirements:
118
139
  - - ">="
119
140
  - !ruby/object:Gem::Version
120
- hash: 3
121
141
  segments:
122
142
  - 0
143
+ segments_generated: true
123
144
  version: "0"
124
- prerelease: false
125
- type: :runtime
126
- requirement: *id007
145
+ requirement: *id009
127
146
  - !ruby/object:Gem::Dependency
147
+ prerelease: false
128
148
  name: nokogiri
129
- version_requirements: &id008 !ruby/object:Gem::Requirement
130
- none: false
149
+ type: :runtime
150
+ version_requirements: &id010 !ruby/object:Gem::Requirement
131
151
  requirements:
132
152
  - - ">="
133
153
  - !ruby/object:Gem::Version
134
- hash: 3
135
154
  segments:
136
155
  - 0
156
+ segments_generated: true
137
157
  version: "0"
138
- prerelease: false
139
- type: :runtime
140
- requirement: *id008
158
+ requirement: *id010
141
159
  - !ruby/object:Gem::Dependency
160
+ prerelease: false
142
161
  name: mocha
143
- version_requirements: &id009 !ruby/object:Gem::Requirement
144
- none: false
162
+ type: :development
163
+ version_requirements: &id011 !ruby/object:Gem::Requirement
145
164
  requirements:
146
165
  - - ">="
147
166
  - !ruby/object:Gem::Version
148
- hash: 3
149
167
  segments:
150
168
  - 0
169
+ segments_generated: true
151
170
  version: "0"
152
- prerelease: false
153
- type: :development
154
- requirement: *id009
171
+ requirement: *id011
155
172
  - !ruby/object:Gem::Dependency
173
+ prerelease: false
156
174
  name: shoulda
157
- version_requirements: &id010 !ruby/object:Gem::Requirement
158
- none: false
175
+ type: :development
176
+ version_requirements: &id012 !ruby/object:Gem::Requirement
159
177
  requirements:
160
178
  - - ">="
161
179
  - !ruby/object:Gem::Version
162
- hash: 3
163
180
  segments:
164
181
  - 0
182
+ segments_generated: true
165
183
  version: "0"
166
- prerelease: false
167
- type: :development
168
- requirement: *id010
184
+ requirement: *id012
169
185
  description: Ruby library for the Xero accounting system API.
170
186
  email: wayne.robinson@gmail.com
171
187
  executables: []
@@ -182,18 +198,21 @@ files:
182
198
  - README.md
183
199
  - Rakefile
184
200
  - VERSION
185
- - lib/.DS_Store
186
201
  - lib/big_decimal_to_s.rb
187
202
  - lib/class_level_inheritable_attributes.rb
188
203
  - lib/xeroizer.rb
189
204
  - lib/xeroizer/application_http_proxy.rb
190
205
  - lib/xeroizer/ca-certificates.crt
206
+ - lib/xeroizer/configuration.rb
191
207
  - lib/xeroizer/exceptions.rb
192
208
  - lib/xeroizer/generic_application.rb
193
209
  - lib/xeroizer/http.rb
194
210
  - lib/xeroizer/http_encoding_helper.rb
211
+ - lib/xeroizer/logging.rb
195
212
  - lib/xeroizer/models/account.rb
196
213
  - lib/xeroizer/models/address.rb
214
+ - lib/xeroizer/models/bank_account.rb
215
+ - lib/xeroizer/models/bank_transaction.rb
197
216
  - lib/xeroizer/models/branding_theme.rb
198
217
  - lib/xeroizer/models/contact.rb
199
218
  - lib/xeroizer/models/contact_group.rb
@@ -203,10 +222,13 @@ files:
203
222
  - lib/xeroizer/models/external_link.rb
204
223
  - lib/xeroizer/models/invoice.rb
205
224
  - lib/xeroizer/models/item.rb
206
- - lib/xeroizer/models/item_purchase_sale_details.rb
225
+ - lib/xeroizer/models/item_purchase_details.rb
226
+ - lib/xeroizer/models/item_sales_details.rb
207
227
  - lib/xeroizer/models/journal.rb
208
228
  - lib/xeroizer/models/journal_line.rb
229
+ - lib/xeroizer/models/line_amount_type.rb
209
230
  - lib/xeroizer/models/line_item.rb
231
+ - lib/xeroizer/models/line_item_sum.rb
210
232
  - lib/xeroizer/models/manual_journal.rb
211
233
  - lib/xeroizer/models/manual_journal_line.rb
212
234
  - lib/xeroizer/models/option.rb
@@ -228,6 +250,7 @@ files:
228
250
  - lib/xeroizer/record/record_association_helper.rb
229
251
  - lib/xeroizer/record/validation_helper.rb
230
252
  - lib/xeroizer/record/validators/associated_validator.rb
253
+ - lib/xeroizer/record/validators/block_validator.rb
231
254
  - lib/xeroizer/record/validators/inclusion_of_validator.rb
232
255
  - lib/xeroizer/record/validators/presence_of_validator.rb
233
256
  - lib/xeroizer/record/validators/validator.rb
@@ -244,6 +267,10 @@ files:
244
267
  - lib/xeroizer/report/row/xml_helper.rb
245
268
  - lib/xeroizer/report/xml_helper.rb
246
269
  - lib/xeroizer/response.rb
270
+ - test/acceptance/about_creating_bank_transactions_test.rb
271
+ - test/acceptance/about_fetching_bank_transactions_test.rb
272
+ - test/acceptance/acceptance_test.rb
273
+ - test/acceptance/bank_transaction_reference_data.rb
247
274
  - test/stub_responses/accounts.xml
248
275
  - test/stub_responses/api_exception.xml
249
276
  - test/stub_responses/bogus_oauth_error
@@ -475,13 +502,20 @@ files:
475
502
  - test/stub_responses/tracking_categories.xml
476
503
  - test/stub_responses/unknown_error.xml
477
504
  - test/test_helper.rb
505
+ - test/unit/models/bank_transaction_model_parsing_test.rb
506
+ - test/unit/models/bank_transaction_test.rb
507
+ - test/unit/models/bank_transaction_validation_test.rb
478
508
  - test/unit/models/contact_test.rb
479
509
  - test/unit/models/credit_note_test.rb
480
510
  - test/unit/models/invoice_test.rb
511
+ - test/unit/models/line_item_sum_test.rb
512
+ - test/unit/models/line_item_test.rb
513
+ - test/unit/oauth_config_test.rb
481
514
  - test/unit/oauth_test.rb
482
515
  - test/unit/private_application_test.rb
483
516
  - test/unit/record/base_model_test.rb
484
517
  - test/unit/record/base_test.rb
518
+ - test/unit/record/block_validator_test.rb
485
519
  - test/unit/record/model_definition_test.rb
486
520
  - test/unit/record/parse_where_hash_test.rb
487
521
  - test/unit/record/record_association_test.rb
@@ -500,29 +534,53 @@ rdoc_options: []
500
534
  require_paths:
501
535
  - lib
502
536
  required_ruby_version: !ruby/object:Gem::Requirement
503
- none: false
504
537
  requirements:
505
538
  - - ">="
506
539
  - !ruby/object:Gem::Version
507
- hash: 3
508
540
  segments:
509
541
  - 0
542
+ segments_generated: true
510
543
  version: "0"
511
544
  required_rubygems_version: !ruby/object:Gem::Requirement
512
- none: false
513
545
  requirements:
514
546
  - - ">="
515
547
  - !ruby/object:Gem::Version
516
- hash: 3
517
548
  segments:
518
549
  - 0
550
+ segments_generated: true
519
551
  version: "0"
520
552
  requirements: []
521
553
 
522
554
  rubyforge_project:
523
- rubygems_version: 1.5.0
555
+ rubygems_version: 1.3.6
524
556
  signing_key:
525
557
  specification_version: 3
526
558
  summary: Xero library
527
- test_files: []
528
-
559
+ test_files:
560
+ - test/acceptance/about_creating_bank_transactions_test.rb
561
+ - test/acceptance/about_fetching_bank_transactions_test.rb
562
+ - test/acceptance/acceptance_test.rb
563
+ - test/acceptance/bank_transaction_reference_data.rb
564
+ - test/stub_responses/refresh_responses.rb
565
+ - test/test_helper.rb
566
+ - test/unit/models/bank_transaction_model_parsing_test.rb
567
+ - test/unit/models/bank_transaction_test.rb
568
+ - test/unit/models/bank_transaction_validation_test.rb
569
+ - test/unit/models/contact_test.rb
570
+ - test/unit/models/credit_note_test.rb
571
+ - test/unit/models/invoice_test.rb
572
+ - test/unit/models/line_item_sum_test.rb
573
+ - test/unit/models/line_item_test.rb
574
+ - test/unit/oauth_config_test.rb
575
+ - test/unit/oauth_test.rb
576
+ - test/unit/private_application_test.rb
577
+ - test/unit/record/base_model_test.rb
578
+ - test/unit/record/base_test.rb
579
+ - test/unit/record/block_validator_test.rb
580
+ - test/unit/record/model_definition_test.rb
581
+ - test/unit/record/parse_where_hash_test.rb
582
+ - test/unit/record/record_association_test.rb
583
+ - test/unit/record/validators_test.rb
584
+ - test/unit/record_definition_test.rb
585
+ - test/unit/report_definition_test.rb
586
+ - test/unit/report_test.rb
data/lib/.DS_Store DELETED
Binary file