business-central 1.0.5 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (126) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +45 -32
  3. data/lib/business_central/client.rb +7 -52
  4. data/lib/business_central/exceptions.rb +11 -29
  5. data/lib/business_central/object/{attachment.rb → attachments.rb} +9 -11
  6. data/lib/business_central/object/base.rb +42 -114
  7. data/lib/business_central/object/companies.rb +19 -0
  8. data/lib/business_central/object/filter_query.rb +2 -0
  9. data/lib/business_central/object/object_helper.rb +10 -37
  10. data/lib/business_central/object/picture.rb +4 -40
  11. data/lib/business_central/object/request.rb +14 -15
  12. data/lib/business_central/object/response.rb +5 -1
  13. data/lib/business_central/object/url_builder.rb +16 -12
  14. data/lib/business_central/object/url_helper.rb +16 -2
  15. data/lib/business_central/version.rb +1 -1
  16. data/lib/business_central/web_service.rb +2 -0
  17. data/lib/business_central.rb +4 -55
  18. data/lib/refinements/strings.rb +42 -0
  19. data/test/business_central/client_test.rb +24 -0
  20. data/test/business_central/exceptions_test.rb +40 -0
  21. data/test/business_central/object/{attachment_test.rb → attachments_test.rb} +5 -6
  22. data/test/business_central/object/base_test.rb +59 -22
  23. data/test/business_central/object/{company_test.rb → companies_test.rb} +3 -21
  24. data/test/business_central/object/picture_test.rb +7 -16
  25. data/test/business_central/object/response_test.rb +5 -0
  26. data/test/business_central/web_service_test.rb +7 -2
  27. metadata +38 -167
  28. data/lib/business_central/object/account.rb +0 -13
  29. data/lib/business_central/object/aged_account_payable.rb +0 -13
  30. data/lib/business_central/object/aged_account_receivable.rb +0 -13
  31. data/lib/business_central/object/argument_helper.rb +0 -22
  32. data/lib/business_central/object/balance_sheet.rb +0 -13
  33. data/lib/business_central/object/cash_flow_statement.rb +0 -13
  34. data/lib/business_central/object/company.rb +0 -18
  35. data/lib/business_central/object/company_information.rb +0 -14
  36. data/lib/business_central/object/country_region.rb +0 -26
  37. data/lib/business_central/object/currency.rb +0 -29
  38. data/lib/business_central/object/customer.rb +0 -34
  39. data/lib/business_central/object/customer_financial_detail.rb +0 -13
  40. data/lib/business_central/object/customer_payment.rb +0 -43
  41. data/lib/business_central/object/customer_payment_journal.rb +0 -25
  42. data/lib/business_central/object/customer_sale.rb +0 -13
  43. data/lib/business_central/object/default_dimension.rb +0 -51
  44. data/lib/business_central/object/dimension.rb +0 -20
  45. data/lib/business_central/object/dimension_line.rb +0 -37
  46. data/lib/business_central/object/dimension_value.rb +0 -28
  47. data/lib/business_central/object/employee.rb +0 -21
  48. data/lib/business_central/object/general_ledger_entry.rb +0 -13
  49. data/lib/business_central/object/income_statement.rb +0 -13
  50. data/lib/business_central/object/irs1099_code.rb +0 -16
  51. data/lib/business_central/object/item.rb +0 -47
  52. data/lib/business_central/object/item_category.rb +0 -16
  53. data/lib/business_central/object/journal.rb +0 -29
  54. data/lib/business_central/object/journal_line.rb +0 -48
  55. data/lib/business_central/object/payment_method.rb +0 -16
  56. data/lib/business_central/object/payment_term.rb +0 -16
  57. data/lib/business_central/object/purchase_invoice.rb +0 -69
  58. data/lib/business_central/object/purchase_invoice_line.rb +0 -37
  59. data/lib/business_central/object/retained_earning_statement.rb +0 -13
  60. data/lib/business_central/object/sales_credit_memo.rb +0 -20
  61. data/lib/business_central/object/sales_credit_memo_line.rb +0 -30
  62. data/lib/business_central/object/sales_invoice.rb +0 -62
  63. data/lib/business_central/object/sales_invoice_line.rb +0 -30
  64. data/lib/business_central/object/sales_order.rb +0 -20
  65. data/lib/business_central/object/sales_order_line.rb +0 -30
  66. data/lib/business_central/object/sales_quote.rb +0 -20
  67. data/lib/business_central/object/sales_quote_line.rb +0 -30
  68. data/lib/business_central/object/shipment_method.rb +0 -16
  69. data/lib/business_central/object/subscription.rb +0 -16
  70. data/lib/business_central/object/tax_area.rb +0 -16
  71. data/lib/business_central/object/tax_group.rb +0 -16
  72. data/lib/business_central/object/time_registration_entry.rb +0 -16
  73. data/lib/business_central/object/trial_balance.rb +0 -13
  74. data/lib/business_central/object/units_of_measure.rb +0 -16
  75. data/lib/business_central/object/validation.rb +0 -57
  76. data/lib/business_central/object/vendor.rb +0 -42
  77. data/lib/business_central/object/vendor_purchase.rb +0 -13
  78. data/lib/core_ext/string.rb +0 -31
  79. data/test/business_central/object/account_test.rb +0 -67
  80. data/test/business_central/object/aged_account_payable_test.rb +0 -61
  81. data/test/business_central/object/aged_account_receivable_test.rb +0 -61
  82. data/test/business_central/object/balance_sheet_test.rb +0 -61
  83. data/test/business_central/object/cash_flow_statement_test.rb +0 -61
  84. data/test/business_central/object/company_information_test.rb +0 -81
  85. data/test/business_central/object/country_region_test.rb +0 -129
  86. data/test/business_central/object/currency_test.rb +0 -150
  87. data/test/business_central/object/customer_financial_detail_test.rb +0 -68
  88. data/test/business_central/object/customer_payment_journal_test.rb +0 -134
  89. data/test/business_central/object/customer_payment_test.rb +0 -141
  90. data/test/business_central/object/customer_sale_test.rb +0 -72
  91. data/test/business_central/object/customer_test.rb +0 -168
  92. data/test/business_central/object/default_dimension_test.rb +0 -170
  93. data/test/business_central/object/dimension_line_test.rb +0 -165
  94. data/test/business_central/object/dimension_test.rb +0 -65
  95. data/test/business_central/object/dimension_value_test.rb +0 -68
  96. data/test/business_central/object/employee_test.rb +0 -141
  97. data/test/business_central/object/general_ledger_entry_test.rb +0 -82
  98. data/test/business_central/object/income_statement_test.rb +0 -82
  99. data/test/business_central/object/irs1099_code_test.rb +0 -124
  100. data/test/business_central/object/item_category_test.rb +0 -122
  101. data/test/business_central/object/item_test.rb +0 -121
  102. data/test/business_central/object/journal_line_test.rb +0 -152
  103. data/test/business_central/object/journal_test.rb +0 -144
  104. data/test/business_central/object/payment_method_test.rb +0 -134
  105. data/test/business_central/object/payment_term_test.rb +0 -134
  106. data/test/business_central/object/purchase_invoice_line_test.rb +0 -123
  107. data/test/business_central/object/purchase_invoice_test.rb +0 -119
  108. data/test/business_central/object/retained_earning_statement_test.rb +0 -52
  109. data/test/business_central/object/sales_credit_memo_line_test.rb +0 -134
  110. data/test/business_central/object/sales_credit_memo_test.rb +0 -146
  111. data/test/business_central/object/sales_invoice_line_test.rb +0 -164
  112. data/test/business_central/object/sales_invoice_test.rb +0 -156
  113. data/test/business_central/object/sales_order_line_test.rb +0 -134
  114. data/test/business_central/object/sales_order_test.rb +0 -146
  115. data/test/business_central/object/sales_quote_line_test.rb +0 -134
  116. data/test/business_central/object/sales_quote_test.rb +0 -146
  117. data/test/business_central/object/shipment_method_test.rb +0 -133
  118. data/test/business_central/object/subscription_test.rb +0 -126
  119. data/test/business_central/object/tax_area_test.rb +0 -126
  120. data/test/business_central/object/tax_group_test.rb +0 -126
  121. data/test/business_central/object/time_registration_entry_test.rb +0 -126
  122. data/test/business_central/object/trial_balance_test.rb +0 -82
  123. data/test/business_central/object/units_of_measure_test.rb +0 -126
  124. data/test/business_central/object/validation_test.rb +0 -62
  125. data/test/business_central/object/vendor_purchase_test.rb +0 -82
  126. data/test/business_central/object/vendor_test.rb +0 -119
@@ -1,133 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
- # rake test TEST=test/business_central/object/shipment_method_test.rb
5
-
6
- class BusinessCentral::Object::ShipmentMethodTest < Minitest::Test
7
- def setup
8
- @company_id = '123456'
9
- @client = BusinessCentral::Client.new
10
- @shipment_method = @client.shipment_method(company_id: @company_id)
11
- end
12
-
13
- def test_find_all
14
- stub_request(:get, /shipmentMethods/)
15
- .to_return(
16
- status: 200,
17
- body: {
18
- 'value': [
19
- {
20
- id: 1,
21
- code: '1001',
22
- displayName: 'shippingMethod1'
23
- }
24
- ]
25
- }.to_json
26
- )
27
-
28
- response = @shipment_method.find_all
29
- assert_equal response.first[:display_name], 'shippingMethod1'
30
- end
31
-
32
- def test_find_by_id
33
- test_id = '09876'
34
- stub_request(:get, /shipmentMethods\(#{test_id}\)/)
35
- .to_return(
36
- status: 200,
37
- body: {
38
- id: test_id,
39
- code: '1002',
40
- displayName: 'shippingMethod2'
41
- }.to_json
42
- )
43
-
44
- response = @shipment_method.find_by_id(test_id)
45
- assert_equal response[:display_name], 'shippingMethod2'
46
- end
47
-
48
- def test_where
49
- test_filter = "number eq '1020'"
50
- stub_request(:get, /shipmentMethods\?\$filter=#{test_filter}/)
51
- .to_return(
52
- status: 200,
53
- body: {
54
- 'value': [
55
- {
56
- id: '345',
57
- code: '1003',
58
- displayName: 'shippingMethod3'
59
- }
60
- ]
61
- }.to_json
62
- )
63
-
64
- response = @shipment_method.where(test_filter)
65
- assert_equal response.first[:display_name], 'shippingMethod3'
66
- end
67
-
68
- def test_create
69
- stub_request(:post, /shipmentMethods/)
70
- .to_return(
71
- status: 200,
72
- body: {
73
- id: '678',
74
- code: '1003',
75
- displayName: 'shippingMethod3'
76
- }.to_json
77
- )
78
-
79
- response = @shipment_method.create(
80
- display_name: 'shippingMethod3'
81
- )
82
- assert_equal response[:display_name], 'shippingMethod3'
83
- end
84
-
85
- def test_update
86
- test_id = '011123'
87
- stub_request(:get, /shipmentMethods\(#{test_id}\)/)
88
- .to_return(
89
- status: 200,
90
- body: {
91
- etag: '112',
92
- id: test_id,
93
- code: '1004',
94
- displayName: 'shippingMethod4'
95
- }.to_json
96
- )
97
-
98
- stub_request(:patch, /shipmentMethods\(#{test_id}\)/)
99
- .to_return(
100
- status: 200,
101
- body: {
102
- id: test_id,
103
- code: '1004',
104
- displayName: 'shippingMethod4_1'
105
- }.to_json
106
- )
107
-
108
- response = @shipment_method.update(
109
- test_id,
110
- display_name: 'shippingMethod4_1'
111
- )
112
- assert_equal response[:display_name], 'shippingMethod4_1'
113
- end
114
-
115
- def test_delete
116
- test_id = '0111245'
117
- stub_request(:get, /shipmentMethods\(#{test_id}\)/)
118
- .to_return(
119
- status: 200,
120
- body: {
121
- etag: '113',
122
- id: test_id,
123
- code: '1005',
124
- displayName: 'shippingMethod5'
125
- }.to_json
126
- )
127
-
128
- stub_request(:delete, /shipmentMethods\(#{test_id}\)/)
129
- .to_return(status: 204)
130
-
131
- assert @shipment_method.destroy(test_id)
132
- end
133
- end
@@ -1,126 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
- # rake test TEST=test/business_central/object/subscription_test.rb
5
-
6
- class BusinessCentral::Object::SubscriptionTest < Minitest::Test
7
- def setup
8
- @company_id = '123456'
9
- @client = BusinessCentral::Client.new
10
- @subscription = @client.subscription(company_id: @company_id)
11
- end
12
-
13
- def test_find_all
14
- stub_request(:get, /subscriptions/)
15
- .to_return(
16
- status: 200,
17
- body: {
18
- 'value': [
19
- {
20
- id: 1,
21
- number: '1009'
22
- }
23
- ]
24
- }.to_json
25
- )
26
-
27
- response = @subscription.find_all
28
- assert_equal response.first[:number], '1009'
29
- end
30
-
31
- def test_find_by_id
32
- test_id = '09876'
33
- stub_request(:get, /subscriptions\(#{test_id}\)/)
34
- .to_return(
35
- status: 200,
36
- body: {
37
- id: test_id,
38
- number: '1010'
39
- }.to_json
40
- )
41
-
42
- response = @subscription.find_by_id(test_id)
43
- assert_equal response[:number], '1010'
44
- end
45
-
46
- def test_where
47
- test_filter = "number eq '1020'"
48
- stub_request(:get, /subscriptions\?\$filter=#{test_filter}/)
49
- .to_return(
50
- status: 200,
51
- body: {
52
- 'value': [
53
- {
54
- id: '345',
55
- number: '1011'
56
- }
57
- ]
58
- }.to_json
59
- )
60
-
61
- response = @subscription.where(test_filter)
62
- assert_equal response.first[:number], '1011'
63
- end
64
-
65
- def test_create
66
- stub_request(:post, /subscriptions/)
67
- .to_return(
68
- status: 200,
69
- body: {
70
- id: '678',
71
- number: '1012'
72
- }.to_json
73
- )
74
-
75
- response = @subscription.create(
76
- number: '1012'
77
- )
78
- assert_equal response[:number], '1012'
79
- end
80
-
81
- def test_update
82
- test_id = '011123'
83
- stub_request(:get, /subscriptions\(#{test_id}\)/)
84
- .to_return(
85
- status: 200,
86
- body: {
87
- etag: '112',
88
- id: test_id,
89
- number: '1012'
90
- }.to_json
91
- )
92
-
93
- stub_request(:patch, /subscriptions\(#{test_id}\)/)
94
- .to_return(
95
- status: 200,
96
- body: {
97
- id: test_id,
98
- number: '1013'
99
- }.to_json
100
- )
101
-
102
- response = @subscription.update(
103
- test_id,
104
- number: '1013'
105
- )
106
- assert_equal response[:number], '1013'
107
- end
108
-
109
- def test_delete
110
- test_id = '0111245'
111
- stub_request(:get, /subscriptions\(#{test_id}\)/)
112
- .to_return(
113
- status: 200,
114
- body: {
115
- etag: '113',
116
- id: test_id,
117
- number: '1013'
118
- }.to_json
119
- )
120
-
121
- stub_request(:delete, /subscriptions\(#{test_id}\)/)
122
- .to_return(status: 204)
123
-
124
- assert @subscription.destroy(test_id)
125
- end
126
- end
@@ -1,126 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
- # rake test TEST=test/business_central/object/tax_area_test.rb
5
-
6
- class BusinessCentral::Object::TaxAreaTest < Minitest::Test
7
- def setup
8
- @company_id = '123456'
9
- @client = BusinessCentral::Client.new
10
- @tax_area = @client.tax_area(company_id: @company_id)
11
- end
12
-
13
- def test_find_all
14
- stub_request(:get, /taxAreas/)
15
- .to_return(
16
- status: 200,
17
- body: {
18
- 'value': [
19
- {
20
- id: 1,
21
- number: '1009'
22
- }
23
- ]
24
- }.to_json
25
- )
26
-
27
- response = @tax_area.find_all
28
- assert_equal response.first[:number], '1009'
29
- end
30
-
31
- def test_find_by_id
32
- test_id = '09876'
33
- stub_request(:get, /taxAreas\(#{test_id}\)/)
34
- .to_return(
35
- status: 200,
36
- body: {
37
- id: test_id,
38
- number: '1010'
39
- }.to_json
40
- )
41
-
42
- response = @tax_area.find_by_id(test_id)
43
- assert_equal response[:number], '1010'
44
- end
45
-
46
- def test_where
47
- test_filter = "number eq '1020'"
48
- stub_request(:get, /taxAreas\?\$filter=#{test_filter}/)
49
- .to_return(
50
- status: 200,
51
- body: {
52
- 'value': [
53
- {
54
- id: '345',
55
- number: '1011'
56
- }
57
- ]
58
- }.to_json
59
- )
60
-
61
- response = @tax_area.where(test_filter)
62
- assert_equal response.first[:number], '1011'
63
- end
64
-
65
- def test_create
66
- stub_request(:post, /taxAreas/)
67
- .to_return(
68
- status: 200,
69
- body: {
70
- id: '678',
71
- number: '1012'
72
- }.to_json
73
- )
74
-
75
- response = @tax_area.create(
76
- number: '1012'
77
- )
78
- assert_equal response[:number], '1012'
79
- end
80
-
81
- def test_update
82
- test_id = '011123'
83
- stub_request(:get, /taxAreas\(#{test_id}\)/)
84
- .to_return(
85
- status: 200,
86
- body: {
87
- etag: '112',
88
- id: test_id,
89
- number: '1012'
90
- }.to_json
91
- )
92
-
93
- stub_request(:patch, /taxAreas\(#{test_id}\)/)
94
- .to_return(
95
- status: 200,
96
- body: {
97
- id: test_id,
98
- number: '1013'
99
- }.to_json
100
- )
101
-
102
- response = @tax_area.update(
103
- test_id,
104
- number: '1013'
105
- )
106
- assert_equal response[:number], '1013'
107
- end
108
-
109
- def test_delete
110
- test_id = '0111245'
111
- stub_request(:get, /taxAreas\(#{test_id}\)/)
112
- .to_return(
113
- status: 200,
114
- body: {
115
- etag: '113',
116
- id: test_id,
117
- number: '1013'
118
- }.to_json
119
- )
120
-
121
- stub_request(:delete, /taxAreas\(#{test_id}\)/)
122
- .to_return(status: 204)
123
-
124
- assert @tax_area.destroy(test_id)
125
- end
126
- end
@@ -1,126 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
- # rake test TEST=test/business_central/object/tax_group_test.rb
5
-
6
- class BusinessCentral::Object::TaxGroupTest < Minitest::Test
7
- def setup
8
- @company_id = '123456'
9
- @client = BusinessCentral::Client.new
10
- @tax_group = @client.tax_group(company_id: @company_id)
11
- end
12
-
13
- def test_find_all
14
- stub_request(:get, /taxGroups/)
15
- .to_return(
16
- status: 200,
17
- body: {
18
- 'value': [
19
- {
20
- id: 1,
21
- number: '1009'
22
- }
23
- ]
24
- }.to_json
25
- )
26
-
27
- response = @tax_group.find_all
28
- assert_equal response.first[:number], '1009'
29
- end
30
-
31
- def test_find_by_id
32
- test_id = '09876'
33
- stub_request(:get, /taxGroups\(#{test_id}\)/)
34
- .to_return(
35
- status: 200,
36
- body: {
37
- id: test_id,
38
- number: '1010'
39
- }.to_json
40
- )
41
-
42
- response = @tax_group.find_by_id(test_id)
43
- assert_equal response[:number], '1010'
44
- end
45
-
46
- def test_where
47
- test_filter = "number eq '1020'"
48
- stub_request(:get, /taxGroups\?\$filter=#{test_filter}/)
49
- .to_return(
50
- status: 200,
51
- body: {
52
- 'value': [
53
- {
54
- id: '345',
55
- number: '1011'
56
- }
57
- ]
58
- }.to_json
59
- )
60
-
61
- response = @tax_group.where(test_filter)
62
- assert_equal response.first[:number], '1011'
63
- end
64
-
65
- def test_create
66
- stub_request(:post, /taxGroups/)
67
- .to_return(
68
- status: 200,
69
- body: {
70
- id: '678',
71
- number: '1012'
72
- }.to_json
73
- )
74
-
75
- response = @tax_group.create(
76
- number: '1012'
77
- )
78
- assert_equal response[:number], '1012'
79
- end
80
-
81
- def test_update
82
- test_id = '011123'
83
- stub_request(:get, /taxGroups\(#{test_id}\)/)
84
- .to_return(
85
- status: 200,
86
- body: {
87
- etag: '112',
88
- id: test_id,
89
- number: '1012'
90
- }.to_json
91
- )
92
-
93
- stub_request(:patch, /taxGroups\(#{test_id}\)/)
94
- .to_return(
95
- status: 200,
96
- body: {
97
- id: test_id,
98
- number: '1013'
99
- }.to_json
100
- )
101
-
102
- response = @tax_group.update(
103
- test_id,
104
- number: '1013'
105
- )
106
- assert_equal response[:number], '1013'
107
- end
108
-
109
- def test_delete
110
- test_id = '0111245'
111
- stub_request(:get, /taxGroups\(#{test_id}\)/)
112
- .to_return(
113
- status: 200,
114
- body: {
115
- etag: '113',
116
- id: test_id,
117
- number: '1013'
118
- }.to_json
119
- )
120
-
121
- stub_request(:delete, /taxGroups\(#{test_id}\)/)
122
- .to_return(status: 204)
123
-
124
- assert @tax_group.destroy(test_id)
125
- end
126
- end
@@ -1,126 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
- # rake test TEST=test/business_central/object/time_registration_entry_test.rb
5
-
6
- class BusinessCentral::Object::TimeRegistrationEntryTest < Minitest::Test
7
- def setup
8
- @company_id = '123456'
9
- @client = BusinessCentral::Client.new
10
- @time_registration_entry = @client.time_registration_entry(company_id: @company_id)
11
- end
12
-
13
- def test_find_all
14
- stub_request(:get, /timeRegistrationEntries/)
15
- .to_return(
16
- status: 200,
17
- body: {
18
- 'value': [
19
- {
20
- id: 1,
21
- number: '1009'
22
- }
23
- ]
24
- }.to_json
25
- )
26
-
27
- response = @time_registration_entry.find_all
28
- assert_equal response.first[:number], '1009'
29
- end
30
-
31
- def test_find_by_id
32
- test_id = '09876'
33
- stub_request(:get, /timeRegistrationEntries\(#{test_id}\)/)
34
- .to_return(
35
- status: 200,
36
- body: {
37
- id: test_id,
38
- number: '1010'
39
- }.to_json
40
- )
41
-
42
- response = @time_registration_entry.find_by_id(test_id)
43
- assert_equal response[:number], '1010'
44
- end
45
-
46
- def test_where
47
- test_filter = "number eq '1020'"
48
- stub_request(:get, /timeRegistrationEntries\?\$filter=#{test_filter}/)
49
- .to_return(
50
- status: 200,
51
- body: {
52
- 'value': [
53
- {
54
- id: '345',
55
- number: '1011'
56
- }
57
- ]
58
- }.to_json
59
- )
60
-
61
- response = @time_registration_entry.where(test_filter)
62
- assert_equal response.first[:number], '1011'
63
- end
64
-
65
- def test_create
66
- stub_request(:post, /timeRegistrationEntries/)
67
- .to_return(
68
- status: 200,
69
- body: {
70
- id: '678',
71
- number: '1012'
72
- }.to_json
73
- )
74
-
75
- response = @time_registration_entry.create(
76
- number: '1012'
77
- )
78
- assert_equal response[:number], '1012'
79
- end
80
-
81
- def test_update
82
- test_id = '011123'
83
- stub_request(:get, /timeRegistrationEntries\(#{test_id}\)/)
84
- .to_return(
85
- status: 200,
86
- body: {
87
- etag: '112',
88
- id: test_id,
89
- number: '1012'
90
- }.to_json
91
- )
92
-
93
- stub_request(:patch, /timeRegistrationEntries\(#{test_id}\)/)
94
- .to_return(
95
- status: 200,
96
- body: {
97
- id: test_id,
98
- number: '1013'
99
- }.to_json
100
- )
101
-
102
- response = @time_registration_entry.update(
103
- test_id,
104
- number: '1013'
105
- )
106
- assert_equal response[:number], '1013'
107
- end
108
-
109
- def test_delete
110
- test_id = '0111245'
111
- stub_request(:get, /timeRegistrationEntries\(#{test_id}\)/)
112
- .to_return(
113
- status: 200,
114
- body: {
115
- etag: '113',
116
- id: test_id,
117
- number: '1013'
118
- }.to_json
119
- )
120
-
121
- stub_request(:delete, /timeRegistrationEntries\(#{test_id}\)/)
122
- .to_return(status: 204)
123
-
124
- assert @time_registration_entry.destroy(test_id)
125
- end
126
- end
@@ -1,82 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
- # rake test TEST=test/business_central/object/trial_balance_test.rb
5
-
6
- class BusinessCentral::Object::TrialBalanceTest < Minitest::Test
7
- def setup
8
- @company_id = '123456'
9
- @client = BusinessCentral::Client.new
10
- @trial_balance = @client.trial_balance(company_id: @company_id)
11
- end
12
-
13
- def test_find_all
14
- stub_request(:get, /trialBalance/)
15
- .to_return(
16
- status: 200,
17
- body: {
18
- 'value': [
19
- {
20
- id: 1,
21
- number: '1009'
22
- }
23
- ]
24
- }.to_json
25
- )
26
-
27
- response = @trial_balance.find_all
28
- assert_equal response.first[:number], '1009'
29
- end
30
-
31
- def test_find_by_id
32
- test_id = '09876'
33
- stub_request(:get, /trialBalance\(#{test_id}\)/)
34
- .to_return(
35
- status: 200,
36
- body: {
37
- id: test_id,
38
- number: '1010'
39
- }.to_json
40
- )
41
-
42
- response = @trial_balance.find_by_id(test_id)
43
- assert_equal response[:number], '1010'
44
- end
45
-
46
- def test_where
47
- test_filter = "number eq '1020'"
48
- stub_request(:get, /trialBalance\?\$filter=#{test_filter}/)
49
- .to_return(
50
- status: 200,
51
- body: {
52
- 'value': [
53
- {
54
- id: '345',
55
- number: '1011'
56
- }
57
- ]
58
- }.to_json
59
- )
60
-
61
- response = @trial_balance.where(test_filter)
62
- assert_equal response.first[:number], '1011'
63
- end
64
-
65
- def test_create
66
- assert_raises BusinessCentral::NoSupportedMethod do
67
- @trial_balance.create({})
68
- end
69
- end
70
-
71
- def test_update
72
- assert_raises BusinessCentral::NoSupportedMethod do
73
- @trial_balance.update('123', {})
74
- end
75
- end
76
-
77
- def test_delete
78
- assert_raises BusinessCentral::NoSupportedMethod do
79
- @trial_balance.destroy('123')
80
- end
81
- end
82
- end