fortnox-api 0.8.0 → 0.8.1

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 (197) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +1 -0
  3. data/.rubocop.yml +1 -1
  4. data/.tool-versions +1 -0
  5. data/.travis.yml +5 -3
  6. data/CHANGELOG.md +37 -3
  7. data/fortnox-api.gemspec +22 -17
  8. data/lib/fortnox/api/mappers/article.rb +1 -1
  9. data/lib/fortnox/api/mappers/base/from_json.rb +1 -1
  10. data/lib/fortnox/api/mappers/base/to_json.rb +2 -2
  11. data/lib/fortnox/api/mappers/base.rb +3 -3
  12. data/lib/fortnox/api/mappers/customer.rb +1 -1
  13. data/lib/fortnox/api/mappers/default_delivery_types.rb +1 -1
  14. data/lib/fortnox/api/mappers/default_templates.rb +1 -1
  15. data/lib/fortnox/api/mappers/edi_information.rb +1 -1
  16. data/lib/fortnox/api/mappers/email_information.rb +1 -1
  17. data/lib/fortnox/api/mappers/invoice.rb +4 -4
  18. data/lib/fortnox/api/mappers/invoice_row.rb +1 -1
  19. data/lib/fortnox/api/mappers/order.rb +4 -4
  20. data/lib/fortnox/api/mappers/order_row.rb +1 -1
  21. data/lib/fortnox/api/mappers/project.rb +1 -1
  22. data/lib/fortnox/api/mappers/terms_of_payment.rb +1 -1
  23. data/lib/fortnox/api/mappers/unit.rb +1 -1
  24. data/lib/fortnox/api/mappers/value/country_string.rb +1 -1
  25. data/lib/fortnox/api/mappers.rb +18 -18
  26. data/lib/fortnox/api/models/article.rb +2 -2
  27. data/lib/fortnox/api/models/base.rb +14 -14
  28. data/lib/fortnox/api/models/customer.rb +2 -2
  29. data/lib/fortnox/api/models/document.rb +2 -2
  30. data/lib/fortnox/api/models/invoice.rb +2 -2
  31. data/lib/fortnox/api/models/label.rb +1 -1
  32. data/lib/fortnox/api/models/order.rb +2 -2
  33. data/lib/fortnox/api/models/project.rb +2 -2
  34. data/lib/fortnox/api/models/terms_of_payment.rb +2 -2
  35. data/lib/fortnox/api/models/unit.rb +2 -2
  36. data/lib/fortnox/api/models.rb +7 -7
  37. data/lib/fortnox/api/repositories/article.rb +3 -3
  38. data/lib/fortnox/api/repositories/base.rb +4 -3
  39. data/lib/fortnox/api/repositories/customer.rb +3 -3
  40. data/lib/fortnox/api/repositories/invoice.rb +3 -3
  41. data/lib/fortnox/api/repositories/order.rb +3 -3
  42. data/lib/fortnox/api/repositories/project.rb +3 -3
  43. data/lib/fortnox/api/repositories/terms_of_payment.rb +3 -3
  44. data/lib/fortnox/api/repositories/unit.rb +3 -3
  45. data/lib/fortnox/api/repositories.rb +7 -7
  46. data/lib/fortnox/api/types/default_delivery_types.rb +0 -2
  47. data/lib/fortnox/api/types/default_templates.rb +0 -2
  48. data/lib/fortnox/api/types/edi_information.rb +0 -2
  49. data/lib/fortnox/api/types/email_information.rb +0 -2
  50. data/lib/fortnox/api/types/invoice_row.rb +1 -1
  51. data/lib/fortnox/api/types/model.rb +4 -6
  52. data/lib/fortnox/api/types/nullable.rb +13 -9
  53. data/lib/fortnox/api/types/order_row.rb +1 -1
  54. data/lib/fortnox/api/types/required.rb +3 -3
  55. data/lib/fortnox/api/types/sized.rb +2 -2
  56. data/lib/fortnox/api/types.rb +17 -22
  57. data/lib/fortnox/api/version.rb +1 -1
  58. data/lib/fortnox/api.rb +18 -16
  59. data/spec/fortnox/api/mappers/base/canonical_name_sym_spec.rb +9 -7
  60. data/spec/fortnox/api/mappers/default_delivery_types_spec.rb +1 -1
  61. data/spec/fortnox/api/mappers/examples/mapper.rb +1 -1
  62. data/spec/fortnox/api/models/base_spec.rb +8 -8
  63. data/spec/fortnox/api/repositories/article_spec.rb +2 -2
  64. data/spec/fortnox/api/repositories/base_spec.rb +4 -12
  65. data/spec/fortnox/api/repositories/customer_spec.rb +1 -1
  66. data/spec/fortnox/api/repositories/invoice_spec.rb +0 -6
  67. data/spec/fortnox/api/repositories/project_spec.rb +1 -1
  68. data/spec/fortnox/api/repositories/terms_of_payment_spec.rb +2 -2
  69. data/spec/fortnox/api/repositories/unit_spec.rb +3 -3
  70. data/spec/fortnox/api/types/housework_types_spec.rb +0 -29
  71. data/spec/fortnox/api/types/model_spec.rb +11 -17
  72. data/spec/fortnox/api/types/nullable_spec.rb +30 -10
  73. data/spec/fortnox/api/types/required_spec.rb +1 -4
  74. data/spec/support/matchers/type/enum_matcher.rb +1 -1
  75. data/spec/support/matchers/type/have_account_number_matcher.rb +1 -1
  76. data/spec/support/matchers/type/have_email_matcher.rb +1 -1
  77. data/spec/support/matchers/type/have_nullable_date_matcher.rb +5 -5
  78. data/spec/support/matchers/type/have_nullable_string_matcher.rb +3 -3
  79. data/spec/vcr_cassettes/articles/all.yml +30 -20
  80. data/spec/vcr_cassettes/articles/find_by_hash_failure.yml +25 -19
  81. data/spec/vcr_cassettes/articles/find_failure.yml +25 -19
  82. data/spec/vcr_cassettes/articles/find_id_1.yml +26 -20
  83. data/spec/vcr_cassettes/articles/find_new.yml +28 -22
  84. data/spec/vcr_cassettes/articles/multi_param_find_by_hash.yml +25 -19
  85. data/spec/vcr_cassettes/articles/save_new.yml +27 -21
  86. data/spec/vcr_cassettes/articles/save_old.yml +28 -22
  87. data/spec/vcr_cassettes/articles/save_with_specially_named_attribute.yml +27 -21
  88. data/spec/vcr_cassettes/articles/search_by_name.yml +25 -19
  89. data/spec/vcr_cassettes/articles/search_miss.yml +25 -19
  90. data/spec/vcr_cassettes/articles/search_with_special_char.yml +25 -19
  91. data/spec/vcr_cassettes/articles/single_param_find_by_hash.yml +28 -21
  92. data/spec/vcr_cassettes/customers/all.yml +26 -20
  93. data/spec/vcr_cassettes/customers/find_by_hash_failure.yml +25 -19
  94. data/spec/vcr_cassettes/customers/find_failure.yml +25 -19
  95. data/spec/vcr_cassettes/customers/find_id_1.yml +25 -19
  96. data/spec/vcr_cassettes/customers/find_new.yml +27 -21
  97. data/spec/vcr_cassettes/customers/multi_param_find_by_hash.yml +25 -19
  98. data/spec/vcr_cassettes/customers/save_new.yml +26 -20
  99. data/spec/vcr_cassettes/customers/save_new_with_country_code_SE.yml +26 -20
  100. data/spec/vcr_cassettes/customers/save_old.yml +27 -21
  101. data/spec/vcr_cassettes/customers/save_with_specially_named_attribute.yml +26 -20
  102. data/spec/vcr_cassettes/customers/search_by_name.yml +28 -20
  103. data/spec/vcr_cassettes/customers/search_miss.yml +25 -19
  104. data/spec/vcr_cassettes/customers/search_with_special_char.yml +25 -19
  105. data/spec/vcr_cassettes/customers/single_param_find_by_hash.yml +25 -19
  106. data/spec/vcr_cassettes/invoices/all.yml +26 -20
  107. data/spec/vcr_cassettes/invoices/filter_hit.yml +25 -19
  108. data/spec/vcr_cassettes/invoices/filter_invalid.yml +25 -19
  109. data/spec/vcr_cassettes/invoices/find_by_hash_failure.yml +25 -19
  110. data/spec/vcr_cassettes/invoices/find_failure.yml +25 -19
  111. data/spec/vcr_cassettes/invoices/find_id_1.yml +26 -20
  112. data/spec/vcr_cassettes/invoices/find_new.yml +30 -24
  113. data/spec/vcr_cassettes/invoices/multi_param_find_by_hash.yml +25 -19
  114. data/spec/vcr_cassettes/invoices/save_new.yml +29 -23
  115. data/spec/vcr_cassettes/invoices/save_new_with_comments.yml +29 -23
  116. data/spec/vcr_cassettes/invoices/save_new_with_country.yml +28 -22
  117. data/spec/vcr_cassettes/invoices/save_new_with_country_GB.yml +29 -23
  118. data/spec/vcr_cassettes/invoices/save_new_with_country_Norge.yml +28 -22
  119. data/spec/vcr_cassettes/invoices/save_new_with_country_Norway.yml +28 -22
  120. data/spec/vcr_cassettes/invoices/save_new_with_country_Sverige.yml +28 -22
  121. data/spec/vcr_cassettes/invoices/save_new_with_country_VA.yml +29 -23
  122. data/spec/vcr_cassettes/invoices/save_new_with_country_VI.yml +29 -23
  123. data/spec/vcr_cassettes/invoices/save_new_with_country_empty_string.yml +28 -22
  124. data/spec/vcr_cassettes/invoices/save_new_with_country_nil.yml +28 -22
  125. data/spec/vcr_cassettes/invoices/save_old.yml +30 -24
  126. data/spec/vcr_cassettes/invoices/save_old_with_empty_comments.yml +30 -24
  127. data/spec/vcr_cassettes/invoices/save_old_with_empty_country.yml +29 -23
  128. data/spec/vcr_cassettes/invoices/save_old_with_nil_comments.yml +30 -24
  129. data/spec/vcr_cassettes/invoices/save_old_with_nil_country.yml +29 -23
  130. data/spec/vcr_cassettes/invoices/save_with_nested_model.yml +28 -22
  131. data/spec/vcr_cassettes/invoices/save_with_specially_named_attribute.yml +28 -22
  132. data/spec/vcr_cassettes/invoices/search_by_name.yml +25 -19
  133. data/spec/vcr_cassettes/invoices/search_miss.yml +25 -19
  134. data/spec/vcr_cassettes/invoices/search_with_special_char.yml +25 -19
  135. data/spec/vcr_cassettes/invoices/single_param_find_by_hash.yml +25 -19
  136. data/spec/vcr_cassettes/orders/all.yml +26 -20
  137. data/spec/vcr_cassettes/orders/filter_hit.yml +25 -19
  138. data/spec/vcr_cassettes/orders/filter_invalid.yml +25 -19
  139. data/spec/vcr_cassettes/orders/find_by_hash_failure.yml +25 -19
  140. data/spec/vcr_cassettes/orders/find_failure.yml +25 -19
  141. data/spec/vcr_cassettes/orders/find_id_1.yml +25 -19
  142. data/spec/vcr_cassettes/orders/find_new.yml +29 -23
  143. data/spec/vcr_cassettes/orders/housework_invalid_tax_reduction_type.yml +25 -19
  144. data/spec/vcr_cassettes/orders/housework_othercoses_invalid.yml +25 -19
  145. data/spec/vcr_cassettes/orders/housework_type_babysitting.yml +28 -22
  146. data/spec/vcr_cassettes/orders/housework_type_cleaning.yml +28 -22
  147. data/spec/vcr_cassettes/orders/housework_type_construction.yml +28 -22
  148. data/spec/vcr_cassettes/orders/housework_type_cooking.yml +25 -19
  149. data/spec/vcr_cassettes/orders/housework_type_electricity.yml +28 -22
  150. data/spec/vcr_cassettes/orders/housework_type_gardening.yml +28 -22
  151. data/spec/vcr_cassettes/orders/housework_type_glassmetalwork.yml +28 -22
  152. data/spec/vcr_cassettes/orders/housework_type_grounddrainagework.yml +28 -22
  153. data/spec/vcr_cassettes/orders/housework_type_hvac.yml +28 -22
  154. data/spec/vcr_cassettes/orders/housework_type_itservices.yml +28 -22
  155. data/spec/vcr_cassettes/orders/housework_type_majorappliancerepair.yml +28 -22
  156. data/spec/vcr_cassettes/orders/housework_type_masonry.yml +28 -22
  157. data/spec/vcr_cassettes/orders/housework_type_movingservices.yml +28 -22
  158. data/spec/vcr_cassettes/orders/housework_type_othercare.yml +28 -22
  159. data/spec/vcr_cassettes/orders/housework_type_othercosts.yml +28 -22
  160. data/spec/vcr_cassettes/orders/housework_type_paintingwallpapering.yml +28 -22
  161. data/spec/vcr_cassettes/orders/housework_type_snowplowing.yml +28 -22
  162. data/spec/vcr_cassettes/orders/housework_type_textileclothing.yml +28 -22
  163. data/spec/vcr_cassettes/orders/housework_type_tutoring.yml +25 -19
  164. data/spec/vcr_cassettes/orders/multi_param_find_by_hash.yml +25 -19
  165. data/spec/vcr_cassettes/orders/save_new.yml +28 -22
  166. data/spec/vcr_cassettes/orders/save_old.yml +29 -23
  167. data/spec/vcr_cassettes/orders/save_with_nested_model.yml +28 -22
  168. data/spec/vcr_cassettes/orders/search_by_name.yml +25 -19
  169. data/spec/vcr_cassettes/orders/search_miss.yml +25 -19
  170. data/spec/vcr_cassettes/orders/search_with_special_char.yml +25 -19
  171. data/spec/vcr_cassettes/orders/single_param_find_by_hash.yml +25 -19
  172. data/spec/vcr_cassettes/projects/all.yml +31 -21
  173. data/spec/vcr_cassettes/projects/find_by_hash_failure.yml +25 -19
  174. data/spec/vcr_cassettes/projects/find_failure.yml +25 -19
  175. data/spec/vcr_cassettes/projects/find_id_1.yml +25 -19
  176. data/spec/vcr_cassettes/projects/find_new.yml +28 -22
  177. data/spec/vcr_cassettes/projects/multi_param_find_by_hash.yml +26 -20
  178. data/spec/vcr_cassettes/projects/save_new.yml +27 -21
  179. data/spec/vcr_cassettes/projects/save_old.yml +28 -22
  180. data/spec/vcr_cassettes/projects/single_param_find_by_hash.yml +26 -20
  181. data/spec/vcr_cassettes/termsofpayments/all.yml +34 -27
  182. data/spec/vcr_cassettes/termsofpayments/find_failure.yml +25 -19
  183. data/spec/vcr_cassettes/termsofpayments/find_id_1.yml +25 -19
  184. data/spec/vcr_cassettes/termsofpayments/find_new.yml +27 -21
  185. data/spec/vcr_cassettes/termsofpayments/save_new.yml +27 -21
  186. data/spec/vcr_cassettes/termsofpayments/save_old.yml +27 -21
  187. data/spec/vcr_cassettes/units/all.yml +36 -28
  188. data/spec/vcr_cassettes/units/find_failure.yml +25 -19
  189. data/spec/vcr_cassettes/units/find_id_1.yml +26 -20
  190. data/spec/vcr_cassettes/units/find_new.yml +27 -21
  191. data/spec/vcr_cassettes/units/save_new.yml +27 -21
  192. data/spec/vcr_cassettes/units/save_old.yml +27 -21
  193. data/spec/vcr_cassettes/units/save_with_specially_named_attribute.yml +27 -21
  194. metadata +107 -47
  195. data/spec/support/helpers/dummy_class_helper.rb +0 -38
  196. data/spec/vcr_cassettes/invoices/save_new_with_country_KR.yml +0 -61
  197. data/spec/vcr_cassettes/orders/housework_without_tax_reduction_type.yml +0 -57
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: put
5
- uri: https://api.fortnox.se/3/units/blarg5
5
+ uri: https://api.fortnox.se/3/units/blarg7
6
6
  body:
7
7
  encoding: UTF-8
8
8
  string: '{"Unit":{"Description":"Updated description"}}'
@@ -24,36 +24,42 @@ http_interactions:
24
24
  code: 200
25
25
  message: OK
26
26
  headers:
27
- Server:
28
- - nginx
29
- Date:
30
- - Mon, 21 Dec 2020 20:33:32 GMT
27
+ Content-Length:
28
+ - '131'
31
29
  Content-Type:
32
30
  - application/json
33
- Connection:
34
- - close
31
+ Date:
32
+ - Mon, 22 Jan 2024 14:59:54 GMT
35
33
  Vary:
36
34
  - Accept-Encoding
35
+ X-Build:
36
+ - 9dd4e26746
37
+ X-Frame-Options:
38
+ - sameorigin
37
39
  X-Rack-Responsetime:
38
- - '42'
40
+ - '48'
39
41
  X-Uid:
40
- - 0c7d4cc3
41
- X-Build:
42
- - d59e2acefa
43
- Strict-Transport-Security:
44
- - max-age=31536000; includeSubdomains
45
- X-Xss-Protection:
46
- - 1; mode=block
42
+ - a67d4e96
43
+ Server:
44
+ - Fortnox
47
45
  X-Content-Type-Options:
48
46
  - nosniff
49
- X-Frame-Options:
50
- - sameorigin
47
+ X-Xss-Protection:
48
+ - '0'
51
49
  Referrer-Policy:
52
50
  - strict-origin-when-cross-origin
51
+ Content-Security-Policy:
52
+ - 'upgrade-insecure-requests;frame-ancestors https://*.fortnox.se;report-uri
53
+ /api/cspreport;connect-src ''self'' https://a.storyblok.com wss://*.fortnox.se
54
+ *.fortnox.se *.findity.com mybusiness.pwc.se themes.googleusercontent.com
55
+ s3.amazonaws.com/helpjuice-static/ *.helpjuice.com *.vimeo.com fonts.googleapis.com
56
+ fonts.gstatic.com fortnox.piwik.pro api.cling.se wss://api.cling.se ''unsafe-inline''
57
+ ''unsafe-eval'' blob: data:'
58
+ Strict-Transport-Security:
59
+ - max-age=31536000; includeSubdomains
53
60
  body:
54
61
  encoding: ASCII-8BIT
55
- string: '{"Unit":{"@url":"https:\/\/api.fortnox.se\/3\/units\/blarg5","Code":"blarg5","Description":"Updated
62
+ string: '{"Unit":{"@url":"https:\/\/api.fortnox.se\/3\/units\/blarg7","Code":"blarg7","CodeEnglish":"","Description":"Updated
56
63
  description"}}'
57
- http_version:
58
- recorded_at: Mon, 21 Dec 2020 20:33:32 GMT
59
- recorded_with: VCR 4.0.0
64
+ recorded_at: Mon, 22 Jan 2024 14:59:54 GMT
65
+ recorded_with: VCR 6.2.0
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: https://api.fortnox.se/3/units/
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"Unit":{"Code":"woooh5","Description":"Happy clouds"}}'
8
+ string: '{"Unit":{"Code":"woooh6","Description":"Happy clouds"}}'
9
9
  headers:
10
10
  Content-Type:
11
11
  - application/json
@@ -24,36 +24,42 @@ http_interactions:
24
24
  code: 201
25
25
  message: Created
26
26
  headers:
27
- Server:
28
- - nginx
29
- Date:
30
- - Mon, 21 Dec 2020 20:34:21 GMT
27
+ Content-Length:
28
+ - '124'
31
29
  Content-Type:
32
30
  - application/json
33
- Connection:
34
- - close
31
+ Date:
32
+ - Mon, 22 Jan 2024 15:00:42 GMT
35
33
  Location:
36
34
  - units
35
+ X-Build:
36
+ - 9dd4e26746
37
+ X-Frame-Options:
38
+ - sameorigin
37
39
  X-Rack-Responsetime:
38
- - '19'
40
+ - '110'
39
41
  X-Uid:
40
- - 895e9a00
41
- X-Build:
42
- - d59e2acefa
43
- Strict-Transport-Security:
44
- - max-age=31536000; includeSubdomains
45
- X-Xss-Protection:
46
- - 1; mode=block
42
+ - aeb52aa2
43
+ Server:
44
+ - Fortnox
47
45
  X-Content-Type-Options:
48
46
  - nosniff
49
- X-Frame-Options:
50
- - sameorigin
47
+ X-Xss-Protection:
48
+ - '0'
51
49
  Referrer-Policy:
52
50
  - strict-origin-when-cross-origin
51
+ Content-Security-Policy:
52
+ - 'upgrade-insecure-requests;frame-ancestors https://*.fortnox.se;report-uri
53
+ /api/cspreport;connect-src ''self'' https://a.storyblok.com wss://*.fortnox.se
54
+ *.fortnox.se *.findity.com mybusiness.pwc.se themes.googleusercontent.com
55
+ s3.amazonaws.com/helpjuice-static/ *.helpjuice.com *.vimeo.com fonts.googleapis.com
56
+ fonts.gstatic.com fortnox.piwik.pro api.cling.se wss://api.cling.se ''unsafe-inline''
57
+ ''unsafe-eval'' blob: data:'
58
+ Strict-Transport-Security:
59
+ - max-age=31536000; includeSubdomains
53
60
  body:
54
61
  encoding: UTF-8
55
- string: '{"Unit":{"@url":"https:\/\/api.fortnox.se\/3\/units\/woooh5","Code":"woooh5","Description":"Happy
62
+ string: '{"Unit":{"@url":"https:\/\/api.fortnox.se\/3\/units\/woooh6","Code":"woooh6","CodeEnglish":"","Description":"Happy
56
63
  clouds"}}'
57
- http_version:
58
- recorded_at: Mon, 21 Dec 2020 20:34:21 GMT
59
- recorded_with: VCR 4.0.0
64
+ recorded_at: Mon, 22 Jan 2024 15:00:42 GMT
65
+ recorded_with: VCR 6.2.0
metadata CHANGED
@@ -1,16 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fortnox-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonas Schubert Erlandsson
8
8
  - Hannes Elvemyr
9
9
  - Felix Holmgren
10
- autorequire:
10
+ - Mike Eirih
11
+ autorequire:
11
12
  bindir: bin
12
13
  cert_chain: []
13
- date: 2020-12-22 00:00:00.000000000 Z
14
+ date: 2024-01-23 00:00:00.000000000 Z
14
15
  dependencies:
15
16
  - !ruby/object:Gem::Dependency
16
17
  name: countries
@@ -18,48 +19,70 @@ dependencies:
18
19
  requirements:
19
20
  - - "~>"
20
21
  - !ruby/object:Gem::Version
21
- version: '3.0'
22
+ version: '5.0'
22
23
  type: :runtime
23
24
  prerelease: false
24
25
  version_requirements: !ruby/object:Gem::Requirement
25
26
  requirements:
26
27
  - - "~>"
27
28
  - !ruby/object:Gem::Version
28
- version: '3.0'
29
+ version: '5.0'
29
30
  - !ruby/object:Gem::Dependency
30
- name: dry-struct
31
+ name: dry-configurable
31
32
  requirement: !ruby/object:Gem::Requirement
32
33
  requirements:
33
34
  - - "~>"
34
35
  - !ruby/object:Gem::Version
35
- version: '0.1'
36
+ version: '1.0'
36
37
  type: :runtime
37
38
  prerelease: false
38
39
  version_requirements: !ruby/object:Gem::Requirement
39
40
  requirements:
40
41
  - - "~>"
41
42
  - !ruby/object:Gem::Version
42
- version: '0.1'
43
+ version: '1.0'
43
44
  - !ruby/object:Gem::Dependency
44
- name: dry-types
45
+ name: dry-container
45
46
  requirement: !ruby/object:Gem::Requirement
46
47
  requirements:
47
48
  - - "~>"
48
49
  - !ruby/object:Gem::Version
49
- version: '0.8'
50
- - - "<"
50
+ version: '0.10'
51
+ type: :runtime
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - "~>"
51
56
  - !ruby/object:Gem::Version
52
- version: 0.13.0
57
+ version: '0.10'
58
+ - !ruby/object:Gem::Dependency
59
+ name: dry-struct
60
+ requirement: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - "~>"
63
+ - !ruby/object:Gem::Version
64
+ version: '1.6'
53
65
  type: :runtime
54
66
  prerelease: false
55
67
  version_requirements: !ruby/object:Gem::Requirement
56
68
  requirements:
57
69
  - - "~>"
58
70
  - !ruby/object:Gem::Version
59
- version: '0.8'
60
- - - "<"
71
+ version: '1.6'
72
+ - !ruby/object:Gem::Dependency
73
+ name: dry-types
74
+ requirement: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - "~>"
77
+ - !ruby/object:Gem::Version
78
+ version: '1.7'
79
+ type: :runtime
80
+ prerelease: false
81
+ version_requirements: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - "~>"
61
84
  - !ruby/object:Gem::Version
62
- version: 0.13.0
85
+ version: '1.7'
63
86
  - !ruby/object:Gem::Dependency
64
87
  name: httparty
65
88
  requirement: !ruby/object:Gem::Requirement
@@ -74,48 +97,76 @@ dependencies:
74
97
  - - "~>"
75
98
  - !ruby/object:Gem::Version
76
99
  version: '0.17'
100
+ - !ruby/object:Gem::Dependency
101
+ name: jwt
102
+ requirement: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - "~>"
105
+ - !ruby/object:Gem::Version
106
+ version: '2.3'
107
+ type: :runtime
108
+ prerelease: false
109
+ version_requirements: !ruby/object:Gem::Requirement
110
+ requirements:
111
+ - - "~>"
112
+ - !ruby/object:Gem::Version
113
+ version: '2.3'
77
114
  - !ruby/object:Gem::Dependency
78
115
  name: bundler
79
116
  requirement: !ruby/object:Gem::Requirement
80
117
  requirements:
81
118
  - - "~>"
82
119
  - !ruby/object:Gem::Version
83
- version: '2.0'
120
+ version: '2.4'
84
121
  type: :development
85
122
  prerelease: false
86
123
  version_requirements: !ruby/object:Gem::Requirement
87
124
  requirements:
88
125
  - - "~>"
89
126
  - !ruby/object:Gem::Version
90
- version: '2.0'
127
+ version: '2.4'
128
+ - !ruby/object:Gem::Dependency
129
+ name: dotenv
130
+ requirement: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - "~>"
133
+ - !ruby/object:Gem::Version
134
+ version: '2.8'
135
+ type: :development
136
+ prerelease: false
137
+ version_requirements: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - "~>"
140
+ - !ruby/object:Gem::Version
141
+ version: '2.8'
91
142
  - !ruby/object:Gem::Dependency
92
143
  name: guard
93
144
  requirement: !ruby/object:Gem::Requirement
94
145
  requirements:
95
146
  - - "~>"
96
147
  - !ruby/object:Gem::Version
97
- version: '2.12'
148
+ version: '2.18'
98
149
  type: :development
99
150
  prerelease: false
100
151
  version_requirements: !ruby/object:Gem::Requirement
101
152
  requirements:
102
153
  - - "~>"
103
154
  - !ruby/object:Gem::Version
104
- version: '2.12'
155
+ version: '2.18'
105
156
  - !ruby/object:Gem::Dependency
106
157
  name: guard-rspec
107
158
  requirement: !ruby/object:Gem::Requirement
108
159
  requirements:
109
160
  - - "~>"
110
161
  - !ruby/object:Gem::Version
111
- version: '4.5'
162
+ version: '4.7'
112
163
  type: :development
113
164
  prerelease: false
114
165
  version_requirements: !ruby/object:Gem::Requirement
115
166
  requirements:
116
167
  - - "~>"
117
168
  - !ruby/object:Gem::Version
118
- version: '4.5'
169
+ version: '4.7'
119
170
  - !ruby/object:Gem::Dependency
120
171
  name: pry
121
172
  requirement: !ruby/object:Gem::Requirement
@@ -134,30 +185,30 @@ dependencies:
134
185
  name: rake
135
186
  requirement: !ruby/object:Gem::Requirement
136
187
  requirements:
137
- - - ">="
188
+ - - "~>"
138
189
  - !ruby/object:Gem::Version
139
- version: 12.3.3
190
+ version: '13.0'
140
191
  type: :development
141
192
  prerelease: false
142
193
  version_requirements: !ruby/object:Gem::Requirement
143
194
  requirements:
144
- - - ">="
195
+ - - "~>"
145
196
  - !ruby/object:Gem::Version
146
- version: 12.3.3
197
+ version: '13.0'
147
198
  - !ruby/object:Gem::Dependency
148
199
  name: rspec
149
200
  requirement: !ruby/object:Gem::Requirement
150
201
  requirements:
151
202
  - - "~>"
152
203
  - !ruby/object:Gem::Version
153
- version: '3.2'
204
+ version: '3.12'
154
205
  type: :development
155
206
  prerelease: false
156
207
  version_requirements: !ruby/object:Gem::Requirement
157
208
  requirements:
158
209
  - - "~>"
159
210
  - !ruby/object:Gem::Version
160
- version: '3.2'
211
+ version: '3.12'
161
212
  - !ruby/object:Gem::Dependency
162
213
  name: rspec-collection_matchers
163
214
  requirement: !ruby/object:Gem::Requirement
@@ -178,70 +229,84 @@ dependencies:
178
229
  requirements:
179
230
  - - "~>"
180
231
  - !ruby/object:Gem::Version
181
- version: 0.52.0
232
+ version: 1.39.0
182
233
  type: :development
183
234
  prerelease: false
184
235
  version_requirements: !ruby/object:Gem::Requirement
185
236
  requirements:
186
237
  - - "~>"
187
238
  - !ruby/object:Gem::Version
188
- version: 0.52.0
239
+ version: 1.39.0
189
240
  - !ruby/object:Gem::Dependency
190
241
  name: rubocop-rspec
191
242
  requirement: !ruby/object:Gem::Requirement
192
243
  requirements:
193
244
  - - "~>"
194
245
  - !ruby/object:Gem::Version
195
- version: 1.22.2
246
+ version: 2.16.0
196
247
  type: :development
197
248
  prerelease: false
198
249
  version_requirements: !ruby/object:Gem::Requirement
199
250
  requirements:
200
251
  - - "~>"
201
252
  - !ruby/object:Gem::Version
202
- version: 1.22.2
253
+ version: 2.16.0
203
254
  - !ruby/object:Gem::Dependency
204
255
  name: simplecov
205
256
  requirement: !ruby/object:Gem::Requirement
206
257
  requirements:
207
258
  - - "~>"
208
259
  - !ruby/object:Gem::Version
209
- version: '0.15'
260
+ version: '0.22'
261
+ type: :development
262
+ prerelease: false
263
+ version_requirements: !ruby/object:Gem::Requirement
264
+ requirements:
265
+ - - "~>"
266
+ - !ruby/object:Gem::Version
267
+ version: '0.22'
268
+ - !ruby/object:Gem::Dependency
269
+ name: timecop
270
+ requirement: !ruby/object:Gem::Requirement
271
+ requirements:
272
+ - - "~>"
273
+ - !ruby/object:Gem::Version
274
+ version: 0.9.6
210
275
  type: :development
211
276
  prerelease: false
212
277
  version_requirements: !ruby/object:Gem::Requirement
213
278
  requirements:
214
279
  - - "~>"
215
280
  - !ruby/object:Gem::Version
216
- version: '0.15'
281
+ version: 0.9.6
217
282
  - !ruby/object:Gem::Dependency
218
283
  name: vcr
219
284
  requirement: !ruby/object:Gem::Requirement
220
285
  requirements:
221
286
  - - "~>"
222
287
  - !ruby/object:Gem::Version
223
- version: '4.0'
288
+ version: '6.1'
224
289
  type: :development
225
290
  prerelease: false
226
291
  version_requirements: !ruby/object:Gem::Requirement
227
292
  requirements:
228
293
  - - "~>"
229
294
  - !ruby/object:Gem::Version
230
- version: '4.0'
295
+ version: '6.1'
231
296
  - !ruby/object:Gem::Dependency
232
297
  name: webmock
233
298
  requirement: !ruby/object:Gem::Requirement
234
299
  requirements:
235
300
  - - "~>"
236
301
  - !ruby/object:Gem::Version
237
- version: '3.5'
302
+ version: '3.18'
238
303
  type: :development
239
304
  prerelease: false
240
305
  version_requirements: !ruby/object:Gem::Requirement
241
306
  requirements:
242
307
  - - "~>"
243
308
  - !ruby/object:Gem::Version
244
- version: '3.5'
309
+ version: '3.18'
245
310
  description: This gem uses the HTTParty library to abstract away the REST calls. It
246
311
  gives you access to a number of objects that behave a lot like ActiveRecord instances,
247
312
  giving you access to methods like `all`, `find`, `find_by_...` and so on. And each
@@ -258,6 +323,7 @@ files:
258
323
  - ".gitignore"
259
324
  - ".rspec"
260
325
  - ".rubocop.yml"
326
+ - ".tool-versions"
261
327
  - ".travis.yml"
262
328
  - CHANGELOG.md
263
329
  - CONTRIBUTE.md
@@ -398,7 +464,6 @@ files:
398
464
  - spec/spec_helper.rb
399
465
  - spec/support/helpers.rb
400
466
  - spec/support/helpers/configuration_helper.rb
401
- - spec/support/helpers/dummy_class_helper.rb
402
467
  - spec/support/helpers/repository_helper.rb
403
468
  - spec/support/helpers/when_performing_helper.rb
404
469
  - spec/support/matchers.rb
@@ -462,7 +527,6 @@ files:
462
527
  - spec/vcr_cassettes/invoices/save_new_with_comments.yml
463
528
  - spec/vcr_cassettes/invoices/save_new_with_country.yml
464
529
  - spec/vcr_cassettes/invoices/save_new_with_country_GB.yml
465
- - spec/vcr_cassettes/invoices/save_new_with_country_KR.yml
466
530
  - spec/vcr_cassettes/invoices/save_new_with_country_Norge.yml
467
531
  - spec/vcr_cassettes/invoices/save_new_with_country_Norway.yml
468
532
  - spec/vcr_cassettes/invoices/save_new_with_country_Sverige.yml
@@ -509,7 +573,6 @@ files:
509
573
  - spec/vcr_cassettes/orders/housework_type_snowplowing.yml
510
574
  - spec/vcr_cassettes/orders/housework_type_textileclothing.yml
511
575
  - spec/vcr_cassettes/orders/housework_type_tutoring.yml
512
- - spec/vcr_cassettes/orders/housework_without_tax_reduction_type.yml
513
576
  - spec/vcr_cassettes/orders/multi_param_find_by_hash.yml
514
577
  - spec/vcr_cassettes/orders/save_new.yml
515
578
  - spec/vcr_cassettes/orders/save_old.yml
@@ -545,7 +608,7 @@ homepage: http://github.com/accodeing/fortnox-api
545
608
  licenses:
546
609
  - LGPL-3.0
547
610
  metadata: {}
548
- post_install_message:
611
+ post_install_message:
549
612
  rdoc_options: []
550
613
  require_paths:
551
614
  - lib
@@ -553,15 +616,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
553
616
  requirements:
554
617
  - - ">="
555
618
  - !ruby/object:Gem::Version
556
- version: '2.5'
619
+ version: '2.7'
557
620
  required_rubygems_version: !ruby/object:Gem::Requirement
558
621
  requirements:
559
622
  - - ">="
560
623
  - !ruby/object:Gem::Version
561
624
  version: '0'
562
625
  requirements: []
563
- rubygems_version: 3.0.3
564
- signing_key:
626
+ rubygems_version: 3.4.1
627
+ signing_key:
565
628
  specification_version: 4
566
629
  summary: Gem to use Fortnox REST API in Ruby.
567
630
  test_files:
@@ -631,7 +694,6 @@ test_files:
631
694
  - spec/spec_helper.rb
632
695
  - spec/support/helpers.rb
633
696
  - spec/support/helpers/configuration_helper.rb
634
- - spec/support/helpers/dummy_class_helper.rb
635
697
  - spec/support/helpers/repository_helper.rb
636
698
  - spec/support/helpers/when_performing_helper.rb
637
699
  - spec/support/matchers.rb
@@ -695,7 +757,6 @@ test_files:
695
757
  - spec/vcr_cassettes/invoices/save_new_with_comments.yml
696
758
  - spec/vcr_cassettes/invoices/save_new_with_country.yml
697
759
  - spec/vcr_cassettes/invoices/save_new_with_country_GB.yml
698
- - spec/vcr_cassettes/invoices/save_new_with_country_KR.yml
699
760
  - spec/vcr_cassettes/invoices/save_new_with_country_Norge.yml
700
761
  - spec/vcr_cassettes/invoices/save_new_with_country_Norway.yml
701
762
  - spec/vcr_cassettes/invoices/save_new_with_country_Sverige.yml
@@ -742,7 +803,6 @@ test_files:
742
803
  - spec/vcr_cassettes/orders/housework_type_snowplowing.yml
743
804
  - spec/vcr_cassettes/orders/housework_type_textileclothing.yml
744
805
  - spec/vcr_cassettes/orders/housework_type_tutoring.yml
745
- - spec/vcr_cassettes/orders/housework_without_tax_reduction_type.yml
746
806
  - spec/vcr_cassettes/orders/multi_param_find_by_hash.yml
747
807
  - spec/vcr_cassettes/orders/save_new.yml
748
808
  - spec/vcr_cassettes/orders/save_old.yml
@@ -1,38 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'dry-types'
4
-
5
- module Helpers
6
- def using_test_classes
7
- around(:all) do |example|
8
- classes_before_examples = Object.constants
9
-
10
- save_dry_types_state
11
-
12
- yield
13
-
14
- classes_after_examples = Object.constants
15
- classes_created_by_block = classes_after_examples - classes_before_examples
16
-
17
- example.run
18
-
19
- clean_up_dry_types
20
-
21
- classes_created_by_block.each { |klass| Object.send(:remove_const, klass) }
22
- end
23
- end
24
-
25
- alias using_test_class using_test_classes
26
-
27
- private
28
-
29
- def save_dry_types_state
30
- @types = Dry::Types.container._container.keys
31
- end
32
-
33
- def clean_up_dry_types
34
- container = Dry::Types.container._container
35
- (container.keys - @types).each { |key| container.delete(key) }
36
- Dry::Types.instance_variable_set('@type_map', Concurrent::Map.new)
37
- end
38
- end
@@ -1,61 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://api.fortnox.se/3/invoices/
6
- body:
7
- encoding: UTF-8
8
- string: '{"Invoice":{"Country":"Korea, Republic of","CustomerNumber":"1"}}'
9
- headers:
10
- Content-Type:
11
- - application/json
12
- Accept:
13
- - application/json
14
- Client-Secret:
15
- - 9aBA8ZgsvR
16
- Access-Token:
17
- - ccaef817-d5d8-4b1c-a316-54f3e55c5c54
18
- Accept-Encoding:
19
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
- User-Agent:
21
- - Ruby
22
- response:
23
- status:
24
- code: 201
25
- message: Created
26
- headers:
27
- Server:
28
- - nginx
29
- Date:
30
- - Mon, 21 Dec 2020 20:41:49 GMT
31
- Content-Type:
32
- - application/json
33
- Connection:
34
- - close
35
- Location:
36
- - invoices
37
- X-Rack-Responsetime:
38
- - '87'
39
- X-Uid:
40
- - ca718054
41
- X-Build:
42
- - d59e2acefa
43
- Strict-Transport-Security:
44
- - max-age=31536000; includeSubdomains
45
- X-Xss-Protection:
46
- - 1; mode=block
47
- X-Content-Type-Options:
48
- - nosniff
49
- X-Frame-Options:
50
- - sameorigin
51
- Referrer-Policy:
52
- - strict-origin-when-cross-origin
53
- body:
54
- encoding: UTF-8
55
- string: '{"Invoice":{"@url":"https:\/\/api.fortnox.se\/3\/invoices\/166","@urlTaxReductionList":"https:\/\/api.fortnox.se\/3\/taxreductions?filter=invoices&referencenumber=166","AdministrationFee":0,"AdministrationFeeVAT":0,"Address1":"","Address2":"","Balance":0,"BasisTaxReduction":0,"Booked":false,"Cancelled":false,"City":"","Comments":"","ContractReference":0,"ContributionPercent":0,"ContributionValue":0,"Country":"Korea,
56
- Republic of","CostCenter":"","Credit":"false","CreditInvoiceReference":0,"Currency":"SEK","CurrencyRate":1,"CurrencyUnit":1,"CustomerName":"Old
57
- name","CustomerNumber":"1","DeliveryAddress1":"","DeliveryAddress2":"","DeliveryCity":"","DeliveryCountry":"","DeliveryDate":null,"DeliveryName":"","DeliveryZipCode":"","DocumentNumber":"166","DueDate":"2020-12-21","EDIInformation":{"EDIGlobalLocationNumber":null,"EDIGlobalLocationNumberDelivery":null,"EDIInvoiceExtra1":null,"EDIInvoiceExtra2":null,"EDIOurElectronicReference":null,"EDIYourElectronicReference":null,"EDIStatus":""},"EmailInformation":{"EmailAddressFrom":null,"EmailAddressTo":"","EmailAddressCC":null,"EmailAddressBCC":null,"EmailSubject":"Faktura
58
- {no} bifogas","EmailBody":" "},"EUQuarterlyReport":false,"ExternalInvoiceReference1":"","ExternalInvoiceReference2":"","Freight":0,"FreightVAT":0,"Gross":0,"HouseWork":false,"InvoiceDate":"2020-12-21","InvoicePeriodStart":"","InvoicePeriodEnd":"","InvoiceReference":0,"InvoiceRows":[],"InvoiceType":"INVOICE","Labels":[],"Language":"SV","LastRemindDate":null,"Net":0,"NotCompleted":false,"NoxFinans":false,"OCR":"16659","OfferReference":0,"OrderReference":0,"OrganisationNumber":"860101-8735","OurReference":"","PaymentWay":"","Phone1":"","Phone2":"","PriceList":"A","PrintTemplate":"st","Project":"","WarehouseReady":true,"OutboundDate":"2020-12-21","Remarks":"","Reminders":0,"RoundOff":0,"Sent":false,"TaxReduction":null,"TermsOfDelivery":"","TermsOfPayment":0,"TimeBasisReference":null,"Total":0,"TotalToPay":0,"TotalVAT":0,"VATIncluded":false,"VoucherNumber":null,"VoucherSeries":null,"VoucherYear":null,"WayOfDelivery":"","YourOrderNumber":"","YourReference":"","ZipCode":"","AccountingMethod":"ACCRUAL","FinalPayDate":null,"TaxReductionType":"none"}}'
59
- http_version:
60
- recorded_at: Mon, 21 Dec 2020 20:41:49 GMT
61
- recorded_with: VCR 4.0.0