xero-ruby 1.0 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (343) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +43 -3
  3. data/build_notes.md +21 -0
  4. data/docs/accounting/AccountingApi.md +1514 -722
  5. data/docs/accounting/Allocation.md +11 -1
  6. data/docs/accounting/BankTransfer.md +1 -1
  7. data/docs/accounting/BatchPayment.md +1 -1
  8. data/docs/accounting/Contact.md +2 -2
  9. data/docs/accounting/CreditNote.md +2 -2
  10. data/docs/accounting/Invoice.md +2 -2
  11. data/docs/accounting/Journal.md +1 -1
  12. data/docs/accounting/ManualJournalLine.md +2 -0
  13. data/docs/accounting/Organisation.md +3 -1
  14. data/docs/accounting/Payment.md +6 -4
  15. data/docs/accounting/Quote.md +5 -1
  16. data/docs/accounting/Report.md +1 -1
  17. data/docs/accounting/{TenNinteyNineContact.md → TenNinetyNineContact.md} +2 -2
  18. data/docs/assets/AssetApi.md +40 -16
  19. data/docs/assets/AssetType.md +1 -1
  20. data/docs/projects/Amount.md +19 -0
  21. data/docs/projects/ChargeType.md +16 -0
  22. data/docs/projects/CurrencyCode.md +16 -0
  23. data/docs/projects/Error.md +19 -0
  24. data/docs/projects/Pagination.md +23 -0
  25. data/docs/projects/Project.md +59 -0
  26. data/docs/projects/ProjectApi.md +979 -0
  27. data/docs/projects/ProjectCreateOrUpdate.md +23 -0
  28. data/docs/projects/ProjectPatch.md +17 -0
  29. data/docs/projects/ProjectStatus.md +16 -0
  30. data/docs/projects/ProjectUser.md +21 -0
  31. data/docs/projects/ProjectUsers.md +19 -0
  32. data/docs/projects/Projects.md +19 -0
  33. data/docs/projects/Task.md +45 -0
  34. data/docs/projects/TaskCreateOrUpdate.md +23 -0
  35. data/docs/projects/Tasks.md +19 -0
  36. data/docs/projects/TimeEntries.md +19 -0
  37. data/docs/projects/TimeEntry.md +33 -0
  38. data/docs/projects/TimeEntryCreateOrUpdate.md +25 -0
  39. data/lib/xero-ruby.rb +22 -3
  40. data/lib/xero-ruby/api/accounting_api.rb +85 -9
  41. data/lib/xero-ruby/api/asset_api.rb +3 -3
  42. data/lib/xero-ruby/api/project_api.rb +1035 -0
  43. data/lib/xero-ruby/api_client.rb +103 -37
  44. data/lib/xero-ruby/api_error.rb +2 -2
  45. data/lib/xero-ruby/configuration.rb +4 -5
  46. data/lib/xero-ruby/models/accounting/account.rb +61 -20
  47. data/lib/xero-ruby/models/accounting/account_type.rb +2 -2
  48. data/lib/xero-ruby/models/accounting/accounts.rb +8 -3
  49. data/lib/xero-ruby/models/accounting/accounts_payable.rb +11 -5
  50. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +11 -5
  51. data/lib/xero-ruby/models/accounting/address.rb +19 -12
  52. data/lib/xero-ruby/models/accounting/allocation.rb +66 -9
  53. data/lib/xero-ruby/models/accounting/allocations.rb +8 -3
  54. data/lib/xero-ruby/models/accounting/attachment.rb +12 -8
  55. data/lib/xero-ruby/models/accounting/attachments.rb +8 -3
  56. data/lib/xero-ruby/models/accounting/balances.rb +9 -3
  57. data/lib/xero-ruby/models/accounting/bank_transaction.rb +43 -24
  58. data/lib/xero-ruby/models/accounting/bank_transactions.rb +8 -3
  59. data/lib/xero-ruby/models/accounting/bank_transfer.rb +20 -14
  60. data/lib/xero-ruby/models/accounting/bank_transfers.rb +8 -3
  61. data/lib/xero-ruby/models/accounting/batch_payment.rb +29 -19
  62. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +11 -7
  63. data/lib/xero-ruby/models/accounting/batch_payments.rb +8 -3
  64. data/lib/xero-ruby/models/accounting/bill.rb +8 -3
  65. data/lib/xero-ruby/models/accounting/branding_theme.rb +13 -8
  66. data/lib/xero-ruby/models/accounting/branding_themes.rb +8 -3
  67. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +9 -5
  68. data/lib/xero-ruby/models/accounting/cis_setting.rb +8 -4
  69. data/lib/xero-ruby/models/accounting/cis_settings.rb +8 -3
  70. data/lib/xero-ruby/models/accounting/contact.rb +51 -37
  71. data/lib/xero-ruby/models/accounting/contact_group.rb +12 -6
  72. data/lib/xero-ruby/models/accounting/contact_groups.rb +8 -3
  73. data/lib/xero-ruby/models/accounting/contact_person.rb +10 -6
  74. data/lib/xero-ruby/models/accounting/contacts.rb +8 -3
  75. data/lib/xero-ruby/models/accounting/country_code.rb +2 -2
  76. data/lib/xero-ruby/models/accounting/credit_note.rb +47 -30
  77. data/lib/xero-ruby/models/accounting/credit_notes.rb +8 -3
  78. data/lib/xero-ruby/models/accounting/currencies.rb +8 -3
  79. data/lib/xero-ruby/models/accounting/currency.rb +9 -4
  80. data/lib/xero-ruby/models/accounting/currency_code.rb +4 -4
  81. data/lib/xero-ruby/models/accounting/element.rb +14 -4
  82. data/lib/xero-ruby/models/accounting/employee.rb +17 -8
  83. data/lib/xero-ruby/models/accounting/employees.rb +8 -3
  84. data/lib/xero-ruby/models/accounting/error.rb +10 -6
  85. data/lib/xero-ruby/models/accounting/expense_claim.rb +26 -15
  86. data/lib/xero-ruby/models/accounting/expense_claims.rb +8 -3
  87. data/lib/xero-ruby/models/accounting/external_link.rb +14 -4
  88. data/lib/xero-ruby/models/accounting/history_record.rb +10 -6
  89. data/lib/xero-ruby/models/accounting/history_records.rb +8 -3
  90. data/lib/xero-ruby/models/accounting/invoice.rb +69 -46
  91. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +7 -3
  92. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +8 -3
  93. data/lib/xero-ruby/models/accounting/invoices.rb +8 -3
  94. data/lib/xero-ruby/models/accounting/item.rb +24 -18
  95. data/lib/xero-ruby/models/accounting/items.rb +8 -3
  96. data/lib/xero-ruby/models/accounting/journal.rb +40 -11
  97. data/lib/xero-ruby/models/accounting/journal_line.rb +21 -16
  98. data/lib/xero-ruby/models/accounting/journals.rb +8 -3
  99. data/lib/xero-ruby/models/accounting/line_amount_types.rb +2 -2
  100. data/lib/xero-ruby/models/accounting/line_item.rb +25 -21
  101. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +10 -6
  102. data/lib/xero-ruby/models/accounting/linked_transaction.rb +25 -13
  103. data/lib/xero-ruby/models/accounting/linked_transactions.rb +8 -3
  104. data/lib/xero-ruby/models/accounting/manual_journal.rb +25 -15
  105. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +26 -12
  106. data/lib/xero-ruby/models/accounting/manual_journals.rb +8 -3
  107. data/lib/xero-ruby/models/accounting/online_invoice.rb +7 -3
  108. data/lib/xero-ruby/models/accounting/online_invoices.rb +8 -3
  109. data/lib/xero-ruby/models/accounting/organisation.rb +122 -32
  110. data/lib/xero-ruby/models/accounting/organisations.rb +8 -3
  111. data/lib/xero-ruby/models/accounting/overpayment.rb +36 -23
  112. data/lib/xero-ruby/models/accounting/overpayments.rb +8 -3
  113. data/lib/xero-ruby/models/accounting/payment.rb +57 -24
  114. data/lib/xero-ruby/models/accounting/payment_delete.rb +7 -3
  115. data/lib/xero-ruby/models/accounting/payment_service.rb +12 -8
  116. data/lib/xero-ruby/models/accounting/payment_services.rb +8 -3
  117. data/lib/xero-ruby/models/accounting/payment_term.rb +9 -3
  118. data/lib/xero-ruby/models/accounting/payment_term_type.rb +2 -2
  119. data/lib/xero-ruby/models/accounting/payments.rb +8 -3
  120. data/lib/xero-ruby/models/accounting/phone.rb +16 -6
  121. data/lib/xero-ruby/models/accounting/prepayment.rb +37 -23
  122. data/lib/xero-ruby/models/accounting/prepayments.rb +8 -3
  123. data/lib/xero-ruby/models/accounting/purchase.rb +11 -7
  124. data/lib/xero-ruby/models/accounting/purchase_order.rb +45 -33
  125. data/lib/xero-ruby/models/accounting/purchase_orders.rb +8 -3
  126. data/lib/xero-ruby/models/accounting/quote.rb +58 -28
  127. data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +2 -2
  128. data/lib/xero-ruby/models/accounting/quote_status_codes.rb +3 -2
  129. data/lib/xero-ruby/models/accounting/quotes.rb +8 -3
  130. data/lib/xero-ruby/models/accounting/receipt.rb +32 -19
  131. data/lib/xero-ruby/models/accounting/receipts.rb +8 -3
  132. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +30 -17
  133. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +8 -3
  134. data/lib/xero-ruby/models/accounting/report.rb +15 -9
  135. data/lib/xero-ruby/models/accounting/report_attribute.rb +9 -3
  136. data/lib/xero-ruby/models/accounting/report_cell.rb +9 -3
  137. data/lib/xero-ruby/models/accounting/report_fields.rb +10 -3
  138. data/lib/xero-ruby/models/accounting/report_row.rb +10 -3
  139. data/lib/xero-ruby/models/accounting/report_rows.rb +11 -3
  140. data/lib/xero-ruby/models/accounting/report_with_row.rb +15 -9
  141. data/lib/xero-ruby/models/accounting/report_with_rows.rb +8 -3
  142. data/lib/xero-ruby/models/accounting/reports.rb +8 -3
  143. data/lib/xero-ruby/models/accounting/request_empty.rb +7 -3
  144. data/lib/xero-ruby/models/accounting/row_type.rb +2 -2
  145. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +8 -4
  146. data/lib/xero-ruby/models/accounting/schedule.rb +23 -11
  147. data/lib/xero-ruby/models/accounting/tax_component.rb +11 -7
  148. data/lib/xero-ruby/models/accounting/tax_rate.rb +100 -18
  149. data/lib/xero-ruby/models/accounting/tax_rates.rb +8 -3
  150. data/lib/xero-ruby/models/accounting/tax_type.rb +6 -2
  151. data/lib/xero-ruby/models/accounting/{ten_nintey_nine_contact.rb → ten_ninety_nine_contact.rb} +44 -40
  152. data/lib/xero-ruby/models/accounting/time_zone.rb +2 -2
  153. data/lib/xero-ruby/models/accounting/tracking_categories.rb +8 -3
  154. data/lib/xero-ruby/models/accounting/tracking_category.rb +15 -8
  155. data/lib/xero-ruby/models/accounting/tracking_option.rb +13 -6
  156. data/lib/xero-ruby/models/accounting/tracking_options.rb +8 -3
  157. data/lib/xero-ruby/models/accounting/user.rb +20 -9
  158. data/lib/xero-ruby/models/accounting/users.rb +8 -3
  159. data/lib/xero-ruby/models/accounting/validation_error.rb +7 -3
  160. data/lib/xero-ruby/models/assets/asset.rb +24 -17
  161. data/lib/xero-ruby/models/assets/asset_status.rb +2 -2
  162. data/lib/xero-ruby/models/assets/asset_status_query_param.rb +2 -2
  163. data/lib/xero-ruby/models/assets/asset_type.rb +13 -13
  164. data/lib/xero-ruby/models/assets/assets.rb +9 -3
  165. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +19 -15
  166. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +26 -11
  167. data/lib/xero-ruby/models/assets/error.rb +11 -7
  168. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +12 -8
  169. data/lib/xero-ruby/models/assets/pagination.rb +11 -3
  170. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +11 -7
  171. data/lib/xero-ruby/models/assets/setting.rb +14 -10
  172. data/lib/xero-ruby/models/projects/amount.rb +218 -0
  173. data/lib/xero-ruby/models/projects/charge_type.rb +38 -0
  174. data/lib/xero-ruby/models/projects/currency_code.rb +199 -0
  175. data/lib/xero-ruby/models/projects/error.rb +218 -0
  176. data/lib/xero-ruby/models/projects/pagination.rb +238 -0
  177. data/lib/xero-ruby/models/projects/project.rb +423 -0
  178. data/lib/xero-ruby/models/projects/project_create_or_update.rb +243 -0
  179. data/lib/xero-ruby/models/projects/project_patch.rb +213 -0
  180. data/lib/xero-ruby/models/projects/project_status.rb +37 -0
  181. data/lib/xero-ruby/models/projects/project_user.rb +228 -0
  182. data/lib/xero-ruby/models/projects/project_users.rb +220 -0
  183. data/lib/xero-ruby/models/projects/projects.rb +220 -0
  184. data/lib/xero-ruby/models/projects/task.rb +385 -0
  185. data/lib/xero-ruby/models/projects/task_create_or_update.rb +253 -0
  186. data/lib/xero-ruby/models/projects/tasks.rb +220 -0
  187. data/lib/xero-ruby/models/projects/time_entries.rb +220 -0
  188. data/lib/xero-ruby/models/projects/time_entry.rb +324 -0
  189. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +268 -0
  190. data/lib/xero-ruby/version.rb +3 -3
  191. data/spec/accounting/api/accounting_api_spec.rb +19 -6
  192. data/spec/accounting/models/account_spec.rb +1 -1
  193. data/spec/accounting/models/account_type_spec.rb +1 -1
  194. data/spec/accounting/models/accounts_payable_spec.rb +1 -1
  195. data/spec/accounting/models/accounts_receivable_spec.rb +1 -1
  196. data/spec/accounting/models/accounts_spec.rb +1 -1
  197. data/spec/accounting/models/address_spec.rb +1 -1
  198. data/spec/accounting/models/allocation_spec.rb +1 -1
  199. data/spec/accounting/models/allocations_spec.rb +1 -1
  200. data/spec/accounting/models/attachment_spec.rb +1 -1
  201. data/spec/accounting/models/attachments_spec.rb +1 -1
  202. data/spec/accounting/models/balances_spec.rb +1 -1
  203. data/spec/accounting/models/bank_transaction_spec.rb +1 -1
  204. data/spec/accounting/models/bank_transactions_spec.rb +1 -1
  205. data/spec/accounting/models/bank_transfer_spec.rb +1 -1
  206. data/spec/accounting/models/bank_transfers_spec.rb +1 -1
  207. data/spec/accounting/models/batch_payment_details_spec.rb +1 -1
  208. data/spec/accounting/models/batch_payment_spec.rb +1 -1
  209. data/spec/accounting/models/batch_payments_spec.rb +1 -1
  210. data/spec/accounting/models/bill_spec.rb +1 -1
  211. data/spec/accounting/models/branding_theme_spec.rb +1 -1
  212. data/spec/accounting/models/branding_themes_spec.rb +1 -1
  213. data/spec/accounting/models/cis_org_setting_spec.rb +1 -1
  214. data/spec/accounting/models/cis_setting_spec.rb +1 -1
  215. data/spec/accounting/models/cis_settings_spec.rb +1 -1
  216. data/spec/accounting/models/contact_group_spec.rb +1 -1
  217. data/spec/accounting/models/contact_groups_spec.rb +1 -1
  218. data/spec/accounting/models/contact_person_spec.rb +1 -1
  219. data/spec/accounting/models/contact_spec.rb +1 -1
  220. data/spec/accounting/models/contacts_spec.rb +1 -1
  221. data/spec/accounting/models/country_code_spec.rb +1 -1
  222. data/spec/accounting/models/credit_note_spec.rb +1 -1
  223. data/spec/accounting/models/credit_notes_spec.rb +1 -1
  224. data/spec/accounting/models/currencies_spec.rb +1 -1
  225. data/spec/accounting/models/currency_code_spec.rb +1 -1
  226. data/spec/accounting/models/currency_spec.rb +1 -1
  227. data/spec/accounting/models/element_spec.rb +1 -1
  228. data/spec/accounting/models/employee_spec.rb +1 -1
  229. data/spec/accounting/models/employees_spec.rb +1 -1
  230. data/spec/accounting/models/error_spec.rb +1 -1
  231. data/spec/accounting/models/expense_claim_spec.rb +1 -1
  232. data/spec/accounting/models/expense_claims_spec.rb +1 -1
  233. data/spec/accounting/models/external_link_spec.rb +1 -1
  234. data/spec/accounting/models/history_record_spec.rb +1 -1
  235. data/spec/accounting/models/history_records_spec.rb +1 -1
  236. data/spec/accounting/models/invoice_reminder_spec.rb +1 -1
  237. data/spec/accounting/models/invoice_reminders_spec.rb +1 -1
  238. data/spec/accounting/models/invoice_spec.rb +1 -1
  239. data/spec/accounting/models/invoices_spec.rb +1 -1
  240. data/spec/accounting/models/item_spec.rb +1 -1
  241. data/spec/accounting/models/items_spec.rb +1 -1
  242. data/spec/accounting/models/journal_line_spec.rb +1 -1
  243. data/spec/accounting/models/journal_spec.rb +1 -1
  244. data/spec/accounting/models/journals_spec.rb +1 -1
  245. data/spec/accounting/models/line_amount_types_spec.rb +1 -1
  246. data/spec/accounting/models/line_item_spec.rb +1 -1
  247. data/spec/accounting/models/line_item_tracking_spec.rb +1 -1
  248. data/spec/accounting/models/linked_transaction_spec.rb +1 -1
  249. data/spec/accounting/models/linked_transactions_spec.rb +1 -1
  250. data/spec/accounting/models/manual_journal_line_spec.rb +1 -1
  251. data/spec/accounting/models/manual_journal_spec.rb +1 -1
  252. data/spec/accounting/models/manual_journals_spec.rb +1 -1
  253. data/spec/accounting/models/online_invoice_spec.rb +1 -1
  254. data/spec/accounting/models/online_invoices_spec.rb +1 -1
  255. data/spec/accounting/models/organisation_spec.rb +1 -1
  256. data/spec/accounting/models/organisations_spec.rb +1 -1
  257. data/spec/accounting/models/overpayment_spec.rb +1 -1
  258. data/spec/accounting/models/overpayments_spec.rb +1 -1
  259. data/spec/accounting/models/payment_delete_spec.rb +1 -1
  260. data/spec/accounting/models/payment_service_spec.rb +1 -1
  261. data/spec/accounting/models/payment_services_spec.rb +1 -1
  262. data/spec/accounting/models/payment_spec.rb +7 -1
  263. data/spec/accounting/models/payment_term_spec.rb +1 -1
  264. data/spec/accounting/models/payment_term_type_spec.rb +1 -1
  265. data/spec/accounting/models/payments_spec.rb +1 -1
  266. data/spec/accounting/models/phone_spec.rb +1 -1
  267. data/spec/accounting/models/prepayment_spec.rb +1 -1
  268. data/spec/accounting/models/prepayments_spec.rb +1 -1
  269. data/spec/accounting/models/purchase_order_spec.rb +1 -1
  270. data/spec/accounting/models/purchase_orders_spec.rb +1 -1
  271. data/spec/accounting/models/purchase_spec.rb +1 -1
  272. data/spec/accounting/models/quote_line_amount_types_spec.rb +1 -1
  273. data/spec/accounting/models/quote_spec.rb +1 -1
  274. data/spec/accounting/models/quote_status_codes_spec.rb +1 -1
  275. data/spec/accounting/models/quotes_spec.rb +1 -1
  276. data/spec/accounting/models/receipt_spec.rb +1 -1
  277. data/spec/accounting/models/receipts_spec.rb +1 -1
  278. data/spec/accounting/models/repeating_invoice_spec.rb +1 -1
  279. data/spec/accounting/models/repeating_invoices_spec.rb +1 -1
  280. data/spec/accounting/models/report_attribute_spec.rb +1 -1
  281. data/spec/accounting/models/report_cell_spec.rb +1 -1
  282. data/spec/accounting/models/report_fields_spec.rb +1 -1
  283. data/spec/accounting/models/report_row_spec.rb +1 -1
  284. data/spec/accounting/models/report_rows_spec.rb +1 -1
  285. data/spec/accounting/models/report_spec.rb +1 -1
  286. data/spec/accounting/models/report_with_row_spec.rb +1 -1
  287. data/spec/accounting/models/report_with_rows_spec.rb +1 -1
  288. data/spec/accounting/models/reports_spec.rb +1 -1
  289. data/spec/accounting/models/request_empty_spec.rb +1 -1
  290. data/spec/accounting/models/row_type_spec.rb +1 -1
  291. data/spec/accounting/models/sales_tracking_category_spec.rb +1 -1
  292. data/spec/accounting/models/schedule_spec.rb +1 -1
  293. data/spec/accounting/models/tax_component_spec.rb +1 -1
  294. data/spec/accounting/models/tax_rate_spec.rb +2 -2
  295. data/spec/accounting/models/tax_rates_spec.rb +1 -1
  296. data/spec/accounting/models/tax_type_spec.rb +1 -1
  297. data/spec/accounting/models/ten_nintey_nine_contact_spec.rb +7 -7
  298. data/spec/accounting/models/time_zone_spec.rb +1 -1
  299. data/spec/accounting/models/tracking_categories_spec.rb +1 -1
  300. data/spec/accounting/models/tracking_category_spec.rb +1 -1
  301. data/spec/accounting/models/tracking_option_spec.rb +1 -1
  302. data/spec/accounting/models/tracking_options_spec.rb +1 -1
  303. data/spec/accounting/models/user_spec.rb +1 -1
  304. data/spec/accounting/models/users_spec.rb +1 -1
  305. data/spec/accounting/models/validation_error_spec.rb +1 -1
  306. data/spec/api_client_spec.rb +120 -33
  307. data/spec/assets/api/asset_api_spec.rb +4 -4
  308. data/spec/assets/models/asset_spec.rb +1 -1
  309. data/spec/assets/models/asset_status_query_param_spec.rb +1 -1
  310. data/spec/assets/models/asset_status_spec.rb +1 -1
  311. data/spec/assets/models/asset_type_spec.rb +1 -1
  312. data/spec/assets/models/assets_spec.rb +1 -1
  313. data/spec/assets/models/book_depreciation_detail_spec.rb +1 -1
  314. data/spec/assets/models/book_depreciation_setting_spec.rb +1 -1
  315. data/spec/assets/models/error_spec.rb +1 -1
  316. data/spec/assets/models/field_validation_errors_element_spec.rb +1 -1
  317. data/spec/assets/models/pagination_spec.rb +1 -1
  318. data/spec/assets/models/resource_validation_errors_element_spec.rb +1 -1
  319. data/spec/assets/models/setting_spec.rb +1 -1
  320. data/spec/configuration_spec.rb +8 -24
  321. data/spec/projects/api/project_api_spec.rb +229 -0
  322. data/spec/projects/models/amount_spec.rb +47 -0
  323. data/spec/projects/models/charge_type_spec.rb +35 -0
  324. data/spec/projects/models/currency_code_spec.rb +35 -0
  325. data/spec/projects/models/error_spec.rb +47 -0
  326. data/spec/projects/models/pagination_spec.rb +59 -0
  327. data/spec/projects/models/project_create_or_update_spec.rb +59 -0
  328. data/spec/projects/models/project_patch_spec.rb +41 -0
  329. data/spec/projects/models/project_spec.rb +167 -0
  330. data/spec/projects/models/project_status_spec.rb +35 -0
  331. data/spec/projects/models/project_user_spec.rb +53 -0
  332. data/spec/projects/models/project_users_spec.rb +47 -0
  333. data/spec/projects/models/projects_spec.rb +47 -0
  334. data/spec/projects/models/task_create_or_update_spec.rb +59 -0
  335. data/spec/projects/models/task_spec.rb +129 -0
  336. data/spec/projects/models/tasks_spec.rb +47 -0
  337. data/spec/projects/models/time_entries_spec.rb +47 -0
  338. data/spec/projects/models/time_entry_create_or_update_spec.rb +65 -0
  339. data/spec/projects/models/time_entry_spec.rb +93 -0
  340. data/spec/spec_helper.rb +1 -1
  341. data/xero-ruby.gemspec +3 -4
  342. metadata +85 -9
  343. data/xero-ruby.gem +0 -0
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,9 +14,12 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class Organisations
18
- attr_accessor :organisations
19
20
 
21
+ attr_accessor :organisations
22
+
20
23
  # Attribute mapping from ruby-style variable name to JSON key.
21
24
  def self.attribute_map
22
25
  {
@@ -129,6 +132,8 @@ module XeroRuby::Accounting
129
132
  value.to_i
130
133
  when :Float
131
134
  value.to_f
135
+ when :BigDecimal
136
+ BigDecimal(value.to_s)
132
137
  when :Boolean
133
138
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
134
139
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,61 +14,72 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class Overpayment
18
20
  # See Overpayment Types
19
21
  attr_accessor :type
22
+ RECEIVE_OVERPAYMENT = "RECEIVE-OVERPAYMENT".freeze
23
+ SPEND_OVERPAYMENT = "SPEND-OVERPAYMENT".freeze
24
+ AROVERPAYMENT = "AROVERPAYMENT".freeze
25
+
20
26
 
21
27
  attr_accessor :contact
22
-
28
+
23
29
  # The date the overpayment is created YYYY-MM-DD
24
30
  attr_accessor :date
25
-
31
+
26
32
  # See Overpayment Status Codes
27
33
  attr_accessor :status
34
+ AUTHORISED = "AUTHORISED".freeze
35
+ PAID = "PAID".freeze
36
+ VOIDED = "VOIDED".freeze
37
+
28
38
 
29
39
  attr_accessor :line_amount_types
30
-
40
+
31
41
  # See Overpayment Line Items
32
42
  attr_accessor :line_items
33
-
43
+
34
44
  # The subtotal of the overpayment excluding taxes
35
45
  attr_accessor :sub_total
36
-
46
+
37
47
  # The total tax on the overpayment
38
48
  attr_accessor :total_tax
39
-
49
+
40
50
  # The total of the overpayment (subtotal + total tax)
41
51
  attr_accessor :total
42
-
52
+
43
53
  # UTC timestamp of last update to the overpayment
44
54
  attr_accessor :updated_date_utc
55
+
45
56
 
46
57
  attr_accessor :currency_code
47
-
58
+
48
59
  # Xero generated unique identifier
49
60
  attr_accessor :overpayment_id
50
-
61
+
51
62
  # The currency rate for a multicurrency overpayment. If no rate is specified, the XE.com day rate is used
52
63
  attr_accessor :currency_rate
53
-
64
+
54
65
  # The remaining credit balance on the overpayment
55
66
  attr_accessor :remaining_credit
56
-
67
+
57
68
  # See Allocations
58
69
  attr_accessor :allocations
59
-
70
+
60
71
  # The amount of applied to an invoice
61
72
  attr_accessor :applied_amount
62
-
73
+
63
74
  # See Payments
64
75
  attr_accessor :payments
65
-
76
+
66
77
  # boolean to indicate if a overpayment has an attachment
67
78
  attr_accessor :has_attachments
68
-
79
+
69
80
  # See Attachments
70
81
  attr_accessor :attachments
71
-
82
+
72
83
  class EnumAttributeValidator
73
84
  attr_reader :datatype
74
85
  attr_reader :allowable_values
@@ -125,14 +136,14 @@ module XeroRuby::Accounting
125
136
  :'status' => :'String',
126
137
  :'line_amount_types' => :'LineAmountTypes',
127
138
  :'line_items' => :'Array<LineItem>',
128
- :'sub_total' => :'Float',
129
- :'total_tax' => :'Float',
130
- :'total' => :'Float',
139
+ :'sub_total' => :'BigDecimal',
140
+ :'total_tax' => :'BigDecimal',
141
+ :'total' => :'BigDecimal',
131
142
  :'updated_date_utc' => :'DateTime',
132
143
  :'currency_code' => :'CurrencyCode',
133
144
  :'overpayment_id' => :'String',
134
- :'currency_rate' => :'Float',
135
- :'remaining_credit' => :'Float',
145
+ :'currency_rate' => :'BigDecimal',
146
+ :'remaining_credit' => :'BigDecimal',
136
147
  :'allocations' => :'Array<Allocation>',
137
148
  :'applied_amount' => :'Float',
138
149
  :'payments' => :'Array<Payment>',
@@ -361,6 +372,8 @@ module XeroRuby::Accounting
361
372
  value.to_i
362
373
  when :Float
363
374
  value.to_f
375
+ when :BigDecimal
376
+ BigDecimal(value.to_s)
364
377
  when :Boolean
365
378
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
366
379
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,9 +14,12 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class Overpayments
18
- attr_accessor :overpayments
19
20
 
21
+ attr_accessor :overpayments
22
+
20
23
  # Attribute mapping from ruby-style variable name to JSON key.
21
24
  def self.attribute_map
22
25
  {
@@ -129,6 +132,8 @@ module XeroRuby::Accounting
129
132
  value.to_i
130
133
  when :Float
131
134
  value.to_f
135
+ when :BigDecimal
136
+ BigDecimal(value.to_s)
132
137
  when :Boolean
133
138
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
134
139
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,71 +14,91 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class Payment
20
+
18
21
  attr_accessor :invoice
22
+
19
23
 
20
24
  attr_accessor :credit_note
25
+
21
26
 
22
27
  attr_accessor :prepayment
28
+
23
29
 
24
30
  attr_accessor :overpayment
25
-
31
+
26
32
  # Number of invoice or credit note you are applying payment to e.g.INV-4003
27
33
  attr_accessor :invoice_number
28
-
34
+
29
35
  # Number of invoice or credit note you are applying payment to e.g. INV-4003
30
36
  attr_accessor :credit_note_number
37
+
31
38
 
32
39
  attr_accessor :account
33
-
40
+
34
41
  # Code of account you are using to make the payment e.g. 001 (note- not all accounts have a code value)
35
42
  attr_accessor :code
36
-
43
+
37
44
  # Date the payment is being made (YYYY-MM-DD) e.g. 2009-09-06
38
45
  attr_accessor :date
39
-
46
+
40
47
  # Exchange rate when payment is received. Only used for non base currency invoices and credit notes e.g. 0.7500
41
48
  attr_accessor :currency_rate
42
-
49
+
43
50
  # The amount of the payment. Must be less than or equal to the outstanding amount owing on the invoice e.g. 200.00
44
51
  attr_accessor :amount
45
-
52
+
46
53
  # An optional description for the payment e.g. Direct Debit
47
54
  attr_accessor :reference
48
-
55
+
49
56
  # An optional parameter for the payment. A boolean indicating whether you would like the payment to be created as reconciled when using PUT, or whether a payment has been reconciled when using GET
50
57
  attr_accessor :is_reconciled
51
-
58
+
52
59
  # The status of the payment.
53
60
  attr_accessor :status
54
-
61
+ AUTHORISED = "AUTHORISED".freeze
62
+ DELETED = "DELETED".freeze
63
+
55
64
  # See Payment Types.
56
65
  attr_accessor :payment_type
57
-
66
+ ACCRECPAYMENT = "ACCRECPAYMENT".freeze
67
+ ACCPAYPAYMENT = "ACCPAYPAYMENT".freeze
68
+ ARCREDITPAYMENT = "ARCREDITPAYMENT".freeze
69
+ APCREDITPAYMENT = "APCREDITPAYMENT".freeze
70
+ AROVERPAYMENTPAYMENT = "AROVERPAYMENTPAYMENT".freeze
71
+ ARPREPAYMENTPAYMENT = "ARPREPAYMENTPAYMENT".freeze
72
+ APPREPAYMENTPAYMENT = "APPREPAYMENTPAYMENT".freeze
73
+ APOVERPAYMENTPAYMENT = "APOVERPAYMENTPAYMENT".freeze
74
+
58
75
  # UTC timestamp of last update to the payment
59
76
  attr_accessor :updated_date_utc
60
-
77
+
61
78
  # The Xero identifier for an Payment e.g. 297c2dc5-cc47-4afd-8ec8-74990b8761e9
62
79
  attr_accessor :payment_id
63
-
80
+
64
81
  # The suppliers bank account number the payment is being made to
65
82
  attr_accessor :bank_account_number
66
-
83
+
67
84
  # The suppliers bank account number the payment is being made to
68
85
  attr_accessor :particulars
69
-
86
+
70
87
  # The information to appear on the supplier's bank account
71
88
  attr_accessor :details
72
-
89
+
73
90
  # A boolean to indicate if a contact has an validation errors
74
91
  attr_accessor :has_account
75
-
92
+
76
93
  # A boolean to indicate if a contact has an validation errors
77
94
  attr_accessor :has_validation_errors
78
-
95
+
96
+ # A string to indicate if a invoice status
97
+ attr_accessor :status_attribute_string
98
+
79
99
  # Displays array of validation error messages from the API
80
100
  attr_accessor :validation_errors
81
-
101
+
82
102
  class EnumAttributeValidator
83
103
  attr_reader :datatype
84
104
  attr_reader :allowable_values
@@ -126,6 +146,7 @@ module XeroRuby::Accounting
126
146
  :'details' => :'Details',
127
147
  :'has_account' => :'HasAccount',
128
148
  :'has_validation_errors' => :'HasValidationErrors',
149
+ :'status_attribute_string' => :'StatusAttributeString',
129
150
  :'validation_errors' => :'ValidationErrors'
130
151
  }
131
152
  end
@@ -142,8 +163,8 @@ module XeroRuby::Accounting
142
163
  :'account' => :'Account',
143
164
  :'code' => :'String',
144
165
  :'date' => :'Date',
145
- :'currency_rate' => :'Float',
146
- :'amount' => :'Float',
166
+ :'currency_rate' => :'BigDecimal',
167
+ :'amount' => :'BigDecimal',
147
168
  :'reference' => :'String',
148
169
  :'is_reconciled' => :'Boolean',
149
170
  :'status' => :'String',
@@ -155,6 +176,7 @@ module XeroRuby::Accounting
155
176
  :'details' => :'String',
156
177
  :'has_account' => :'Boolean',
157
178
  :'has_validation_errors' => :'Boolean',
179
+ :'status_attribute_string' => :'String',
158
180
  :'validation_errors' => :'Array<ValidationError>'
159
181
  }
160
182
  end
@@ -256,10 +278,18 @@ module XeroRuby::Accounting
256
278
 
257
279
  if attributes.key?(:'has_account')
258
280
  self.has_account = attributes[:'has_account']
281
+ else
282
+ self.has_account = false
259
283
  end
260
284
 
261
285
  if attributes.key?(:'has_validation_errors')
262
286
  self.has_validation_errors = attributes[:'has_validation_errors']
287
+ else
288
+ self.has_validation_errors = false
289
+ end
290
+
291
+ if attributes.key?(:'status_attribute_string')
292
+ self.status_attribute_string = attributes[:'status_attribute_string']
263
293
  end
264
294
 
265
295
  if attributes.key?(:'validation_errors')
@@ -333,6 +363,7 @@ module XeroRuby::Accounting
333
363
  details == o.details &&
334
364
  has_account == o.has_account &&
335
365
  has_validation_errors == o.has_validation_errors &&
366
+ status_attribute_string == o.status_attribute_string &&
336
367
  validation_errors == o.validation_errors
337
368
  end
338
369
 
@@ -345,7 +376,7 @@ module XeroRuby::Accounting
345
376
  # Calculates hash code according to all attributes.
346
377
  # @return [Integer] Hash code
347
378
  def hash
348
- [invoice, credit_note, prepayment, overpayment, invoice_number, credit_note_number, account, code, date, currency_rate, amount, reference, is_reconciled, status, payment_type, updated_date_utc, payment_id, bank_account_number, particulars, details, has_account, has_validation_errors, validation_errors].hash
379
+ [invoice, credit_note, prepayment, overpayment, invoice_number, credit_note_number, account, code, date, currency_rate, amount, reference, is_reconciled, status, payment_type, updated_date_utc, payment_id, bank_account_number, particulars, details, has_account, has_validation_errors, status_attribute_string, validation_errors].hash
349
380
  end
350
381
 
351
382
  # Builds the object from hash
@@ -391,6 +422,8 @@ module XeroRuby::Accounting
391
422
  value.to_i
392
423
  when :Float
393
424
  value.to_f
425
+ when :BigDecimal
426
+ BigDecimal(value.to_s)
394
427
  when :Boolean
395
428
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
396
429
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,10 +14,12 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class PaymentDelete
18
20
  # The status of the payment.
19
21
  attr_accessor :status
20
-
22
+
21
23
  # Attribute mapping from ruby-style variable name to JSON key.
22
24
  def self.attribute_map
23
25
  {
@@ -135,6 +137,8 @@ module XeroRuby::Accounting
135
137
  value.to_i
136
138
  when :Float
137
139
  value.to_f
140
+ when :BigDecimal
141
+ BigDecimal(value.to_s)
138
142
  when :Boolean
139
143
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
140
144
  true
@@ -3,10 +3,10 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.1.0
6
+ The version of the OpenAPI document: 2.2.11
7
7
  Contact: api@xero.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -14,25 +14,27 @@ require 'time'
14
14
  require 'date'
15
15
 
16
16
  module XeroRuby::Accounting
17
+ require 'bigdecimal'
18
+
17
19
  class PaymentService
18
20
  # Xero identifier
19
21
  attr_accessor :payment_service_id
20
-
22
+
21
23
  # Name of payment service
22
24
  attr_accessor :payment_service_name
23
-
25
+
24
26
  # The custom payment URL
25
27
  attr_accessor :payment_service_url
26
-
28
+
27
29
  # The text displayed on the Pay Now button in Xero Online Invoicing. If this is not set it will default to Pay by credit card
28
30
  attr_accessor :pay_now_text
29
-
31
+
30
32
  # This will always be CUSTOM for payment services created via the API.
31
33
  attr_accessor :payment_service_type
32
-
34
+
33
35
  # Displays array of validation error messages from the API
34
36
  attr_accessor :validation_errors
35
-
37
+
36
38
  # Attribute mapping from ruby-style variable name to JSON key.
37
39
  def self.attribute_map
38
40
  {
@@ -180,6 +182,8 @@ module XeroRuby::Accounting
180
182
  value.to_i
181
183
  when :Float
182
184
  value.to_f
185
+ when :BigDecimal
186
+ BigDecimal(value.to_s)
183
187
  when :Boolean
184
188
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
185
189
  true