kaui 2.0.3 → 2.0.4

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c998eb4ff14442f28a18da7cab14072cc7d19dfc
4
- data.tar.gz: 660dbac2ba54d6d0c853b63c697587e486a5c2ed
3
+ metadata.gz: 062f8cf3943a8a8cae8f80490cac4c2545ed68bd
4
+ data.tar.gz: 398c6df309bdd8bf44eaddcac3273e9cfc394d17
5
5
  SHA512:
6
- metadata.gz: 714a6e0da369b82570551cd082b7fd9b8d62ab18e906756a4194e31dfa5f90d47dd5b8624f5ca070915e45308d31839f451cca5a343895642d50ba47c89d1716
7
- data.tar.gz: bc72e0c1b8febf3d413d1191e48431a2d330aff546e84493953e0697b043258365973d3fd5d0ea6dddab244b4c9a5d4cc6a92d9ce9e60155cf9663f7acc92b60
6
+ metadata.gz: df121d5c0caa28f819c2678c7abf61a4ed161ee16dc6f047f7e6ca0279348f682de5dd8ce57e6bd31ad70f164892a44d911f22da2eaaa3689c4bf06dd560b302
7
+ data.tar.gz: 405d0913456d27232ee1518fb1637efc35423f62f5a948e3312e817c2547fe8f04f38029b5e8d4785522480ef261853640bddf728143e3f84a45408ff26b1219
data/README.md CHANGED
@@ -22,35 +22,15 @@ Ruby 2.4.2+ or JRuby 9.1.14.0+ required.
22
22
  Running Kaui locally
23
23
  ---------------------
24
24
 
25
+ Note: use Ruby, not JRuby, for running the app locally.
26
+
25
27
  You can run Kaui locally by using the test/dummy app provided:
26
28
 
27
29
  ```
28
- export RAILS_ENV=development
29
- export DATABASE_URL=mysql://root:killbill@<MySQL Host IP>/killbill
30
+ export RAILS_ENV=development DB_HOST=127.0.0.1 DB_USER=root DB_PASSWORD=root DB_PORT=3306
30
31
  bundle install
31
- rails db:migrate
32
- rails s
33
- ```
34
- If you experience an error of;
35
-
36
- ```
37
- You must use Bundler 2 or greater with this lockfile.
38
- ```
39
-
40
- Then run the following commands to update your environment.
41
-
42
- Update Rubygems;
43
-
44
- ```
45
- gem update --system
46
- ```
47
- Update bundler;
48
- ```
49
- gem install bundler
50
- ```
51
- Update the Gemfile.lock file;
52
- ```
53
- bundler update --bundler
32
+ bundle exec rails db:migrate
33
+ bundle exec rails s
54
34
  ```
55
35
 
56
36
  The Kill Bill URL can be configured through the `KILLBILL_URL` environment variable, e.g.
@@ -114,7 +94,19 @@ Alternatively, you can run the `kaui` script under `bin` by setting your loadpat
114
94
  Releases
115
95
  ========
116
96
 
117
- The releases are done using Jruby and require the following property `export JRUBY_OPTS='--2.0 -J-Xmx1024m'`
97
+ To trigger a release, run (update `patch` as needed):
98
+
99
+ ```
100
+ bundle exec gem bump -c -p -t -v patch
101
+ ```
102
+
103
+ This will:
104
+
105
+ * Update the `version.rb` file
106
+ * Commit the changes
107
+ * Create the new tag and push the changes
108
+
109
+ GitHub Actions will automatically push the new gem to Rubygems.
118
110
 
119
111
  Multi-Tenancy
120
112
  =============
@@ -205,7 +205,7 @@ jQuery(document).ready(function ($) {
205
205
  return;
206
206
  }
207
207
 
208
- var message = 'Request Status: ' + jqxhr.status + ', Status Text: ' + jqxhr.statusText + ': ' + getMessageFromResponse(jqxhr);
208
+ var message = 'Request error: ' + getMessageFromResponse(jqxhr);
209
209
 
210
210
  if (jqxhr.status == 200) {
211
211
  message = thrownError.message == undefined ? thrownError : thrownError.message;
@@ -74,8 +74,8 @@ class Kaui::AuditLogsController < Kaui::EngineController
74
74
  =begin See https://github.com/killbill/killbill/issues/1104
75
75
  elsif object_type == 'INVOICE_PAYMENT'
76
76
  invoice_payment = Kaui::InvoicePayment::find_by_id(object_id, false, false, cached_options_for_klient)
77
- =end
78
77
  audit_logs_with_history = invoice_payment.audit_logs_with_history(cached_options_for_klient)
78
+ =end
79
79
  elsif object_type == 'PAYMENT_ATTEMPT'
80
80
  audit_logs_with_history = Kaui::Payment::attempt_audit_logs_with_history(object_id, cached_options_for_klient)
81
81
  elsif object_type == 'PAYMENT'
@@ -31,6 +31,10 @@ class Kaui::BundlesController < Kaui::EngineController
31
31
  @available_tags = wait(fetch_available_tags)
32
32
  @available_subscription_tags = wait(fetch_available_subscription_tags)
33
33
 
34
+ # TODO This doesn't take into account catalog versions
35
+ catalogs = Kaui::Catalog.get_account_catalog_json(@account.account_id, nil, cached_options_for_klient) || []
36
+ @catalog = catalogs[-1]
37
+
34
38
  @subscription = {}
35
39
  @bundles.each do |bundle|
36
40
  bundle.subscriptions.each do |sub|
@@ -65,6 +65,7 @@ module Kaui::EngineControllerUtil
65
65
  value = promise.value!(60)
66
66
  raise promise.reason unless promise.reason.nil?
67
67
  if value.nil? && promise.state != :fulfilled
68
+ # Could be https://github.com/ruby-concurrency/concurrent-ruby/issues/585
68
69
  Rails.logger.warn("Unable to run promise #{promise_as_string(promise)}")
69
70
  raise Timeout::Error
70
71
  end
@@ -125,7 +126,7 @@ module Kaui::EngineControllerUtil
125
126
  response = yield
126
127
  response_status = 200
127
128
  rescue KillBillClient::API::ResponseError => e
128
- response = e.response.message
129
+ response = as_string_from_response(e.response.body)
129
130
  response_status = e.code
130
131
  rescue Exception => e
131
132
  response = e.message
@@ -49,7 +49,25 @@ class Kaui::InvoicesController < Kaui::EngineController
49
49
 
50
50
  @invoice = Kaui::Invoice.find_by_id(params.require(:id), 'FULL', cached_options_for_klient)
51
51
  # This will put the TAX items at the bottom
52
- @invoice.items.sort_by! { |ii| [ii.item_type, ii.description] }
52
+ precedence = {
53
+ 'EXTERNAL_CHARGE' => 0,
54
+ 'FIXED' => 1,
55
+ 'RECURRING' => 2,
56
+ 'REPAIR_ADJ' => 3,
57
+ 'USAGE' => 4,
58
+ 'PARENT_SUMMARY' => 5,
59
+ 'ITEM_ADJ' => 6,
60
+ 'CBA_ADJ' => 7,
61
+ 'CREDIT_ADJ' => 8,
62
+ 'TAX' => 9
63
+ }
64
+ # TODO The pretty description has to be shared with the view
65
+ @invoice.items.sort_by! do |ii|
66
+ # Make sure not to compare nil (ArgumentError comparison of Array with Array failed)
67
+ a = precedence[ii.item_type] || 100
68
+ b = (ii.pretty_plan_name.blank? || !ii.item_type.in?(%w{USAGE RECURRING}) ? ii.description : ii.pretty_plan_name) || ''
69
+ [a, b]
70
+ end
53
71
 
54
72
  fetch_payments = promise { @invoice.payments(true, true, 'FULL', cached_options_for_klient).map { |payment| Kaui::InvoicePayment.build_from_raw_payment(payment) } }
55
73
  fetch_pms = fetch_payments.then { |payments| Kaui::PaymentMethod.payment_methods_for_payments(payments, cached_options_for_klient) }
@@ -19,11 +19,24 @@ module Kaui
19
19
  end
20
20
  end
21
21
 
22
- def humanized_subscription_product_name(sub)
23
- if !sub.present? or !sub.product_name.present?
22
+ def humanized_subscription_product_name(sub, catalog = nil)
23
+ if !sub.present? || !sub.product_name.present?
24
24
  nil
25
25
  else
26
- humanized_product_name(sub.product_name)
26
+ product = catalog.nil? ? nil : catalog.products.find { |p| p.name == sub.product_name }
27
+ humanized_product_name(!product.nil? && !product.pretty_name.blank? ? product.pretty_name : sub.product_name)
28
+ end
29
+ end
30
+
31
+ def humanized_subscription_pretty_plan_name(sub, catalog = nil)
32
+ if !sub.present? || !sub.product_name.present?
33
+ nil
34
+ else
35
+ product = catalog.nil? ? nil : catalog.products.find { |p| p.name == sub.product_name }
36
+ return nil if product.nil?
37
+
38
+ plan = product.plans.find { |p| p.name == sub.plan_name }
39
+ plan.nil? || plan.pretty_name.blank? ? nil : plan.pretty_name
27
40
  end
28
41
  end
29
42
 
@@ -56,8 +69,11 @@ module Kaui
56
69
  end
57
70
  end
58
71
 
59
- def humanized_subscription_full_product_name(sub)
60
- humanized_product_name = humanized_subscription_product_name(sub)
72
+ def humanized_subscription_plan_or_product_name(sub, catalog = nil)
73
+ pretty_plan_name = humanized_subscription_pretty_plan_name(sub, catalog)
74
+ return pretty_plan_name unless pretty_plan_name.nil?
75
+
76
+ humanized_product_name = humanized_subscription_product_name(sub, catalog)
61
77
  humanized_billing_period = humanized_subscription_billing_period(sub)
62
78
  humanized_price_list = humanized_subscription_price_list(sub, false)
63
79
 
@@ -4,6 +4,20 @@ class Kaui::Catalog < KillBillClient::Model::Catalog
4
4
 
5
5
  class << self
6
6
 
7
+ def get_account_catalog_json(account_id, requested_date = nil, options = {})
8
+ params = {}
9
+ params[:accountId] = account_id
10
+ params[:requestedDate] = requested_date if requested_date
11
+
12
+ get KillBillClient::Model::Catalog::KILLBILL_API_CATALOG_PREFIX,
13
+ params,
14
+ {
15
+ :head => {'Accept' => "application/json"},
16
+ :content_type => "application/json",
17
+
18
+ }.merge(options)
19
+ end
20
+
7
21
  def get_tenant_catalog_json(requested_date = nil, options = {})
8
22
  super
9
23
  rescue ::KillBillClient::API::InternalServerError => e
@@ -76,7 +76,7 @@
76
76
 
77
77
  <% if bundle.subscriptions.present? %>
78
78
  <div class="search">
79
- <%= render :partial => 'kaui/subscriptions/subscriptions_table', :locals => {:bundle => bundle, :account => @account} %>
79
+ <%= render :partial => 'kaui/subscriptions/subscriptions_table', :locals => {:bundle => bundle, :account => @account, :catalog => @catalog} %>
80
80
  </div>
81
81
  <% end %>
82
82
 
@@ -82,7 +82,7 @@
82
82
 
83
83
  </td>
84
84
  <% end %>
85
- <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= item.description %></td>
85
+ <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= item.pretty_plan_name.blank? || !item.item_type.in?(%w{USAGE RECURRING}) ? item.description : item.pretty_plan_name %></td>
86
86
  <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= item.start_date.html_safe if item.start_date %></td>
87
87
  <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= item.end_date.html_safe if item.end_date %></td>
88
88
  <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= item.subscription_id %></td>
@@ -130,7 +130,7 @@
130
130
 
131
131
  <script language="javascript">
132
132
  function hightlightLinkedItems(invoice_item_id, linked_invoice_item_id) {
133
- $("#invoice_table tr:gt(0)").each(function (index) {
133
+ $("#invoice-table tr:gt(0)").each(function (index) {
134
134
  var ids = $(this).attr("id").split("_");
135
135
  var item_id = ids[2];
136
136
  var linked_item_id = ids[3];
@@ -105,6 +105,7 @@
105
105
  $('#invoice-table').dataTable({
106
106
  "dom": "t",
107
107
  "paging": false,
108
+ "order": [],
108
109
  "columns": [
109
110
  null,
110
111
  null,
@@ -4,8 +4,8 @@
4
4
  <% unless @available_subscription_tags.blank? && @custom_fields_per_subscription.blank? %>
5
5
  <th></th>
6
6
  <% end %>
7
- <th>Product category</th>
8
- <th>Product name</th>
7
+ <th>Category</th>
8
+ <th>Name</th>
9
9
  <th>Phase type</th>
10
10
  <th>Start date</th>
11
11
  <th>Charged through date</th>
@@ -47,7 +47,7 @@
47
47
  <%= humanized_subscription_product_category(sub) %>
48
48
  </span>
49
49
  </td>
50
- <td><%= humanized_subscription_full_product_name(sub) %></td>
50
+ <td><%= humanized_subscription_plan_or_product_name(sub, catalog) %></td>
51
51
  <td><%= humanized_subscription_phase_type(sub) %></td>
52
52
  <td><%= humanized_subscription_start_date(sub, account) %></td>
53
53
  <td><%= humanized_subscription_charged_through_date(sub, account) %></td>
@@ -1,3 +1,3 @@
1
1
  module Kaui
2
- VERSION = '2.0.3'
2
+ VERSION = '2.0.4'
3
3
  end
@@ -3,7 +3,7 @@ default: &default
3
3
  encoding: utf8
4
4
  username: <%= ENV.fetch('DB_USER', 'root') %>
5
5
  password: <%= ENV.fetch('DB_PASSWORD', 'root') %>
6
- host: 127.0.0.1
6
+ host: <%= ENV.fetch('DB_HOST', '127.0.0.1') %>
7
7
  port: <%= ENV.fetch('DB_PORT', '3306') %>
8
8
  pool: 25
9
9
  timeout: 5000
@@ -17,7 +17,7 @@ default: &default
17
17
 
18
18
  development:
19
19
  <<: *default
20
- database: kaui
20
+ database: <%= ENV.fetch('DB_NAME', 'kaui') %>
21
21
 
22
22
  # Warning: The database defined as "test" will be erased and
23
23
  # re-generated from your development database when you run "rake".
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kaui
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3
4
+ version: 2.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Killbill core team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-03 00:00:00.000000000 Z
11
+ date: 2021-01-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -402,6 +402,20 @@ dependencies:
402
402
  - - ">="
403
403
  - !ruby/object:Gem::Version
404
404
  version: '0'
405
+ - !ruby/object:Gem::Dependency
406
+ name: gem-release
407
+ requirement: !ruby/object:Gem::Requirement
408
+ requirements:
409
+ - - "~>"
410
+ - !ruby/object:Gem::Version
411
+ version: '2.2'
412
+ type: :development
413
+ prerelease: false
414
+ version_requirements: !ruby/object:Gem::Requirement
415
+ requirements:
416
+ - - "~>"
417
+ - !ruby/object:Gem::Version
418
+ version: '2.2'
405
419
  - !ruby/object:Gem::Dependency
406
420
  name: byebug
407
421
  requirement: !ruby/object:Gem::Requirement
@@ -885,106 +899,106 @@ signing_key:
885
899
  specification_version: 4
886
900
  summary: Killbill Admin UI mountable engine
887
901
  test_files:
888
- - test/fixtures/catalog-v1.xml
889
- - test/fixtures/invoice_translation_fr-v1.properties
890
- - test/fixtures/catalog_translation_fr-v1.properties
891
- - test/fixtures/invoice_template-v1.html
892
- - test/fixtures/overdue-v1.xml
893
- - test/fixtures/stripe.yml
894
- - test/fixtures/SpyCarAdvanced.xml
895
- - test/unit/kaui/admin_tenant_test.rb
896
- - test/unit/kaui/payment_test.rb
897
- - test/unit/kaui/base_test.rb
898
- - test/unit/kaui/invoice_test.rb
899
- - test/unit/kaui/allowed_user_test.rb
900
- - test/unit/kaui/invoice_payment_test.rb
901
- - test/unit/kaui/account_test.rb
902
- - test/unit/kaui/invoice_item_test.rb
903
- - test/unit/kaui/tag_definition_test.rb
904
- - test/unit/kaui/account_email_test.rb
905
- - test/unit/kaui/date_helper_test.rb
906
- - test/unit/kaui/tenant_test.rb
907
- - test/unit/kaui/money_helper_test.rb
908
- - test/unit/helpers/kaui/tenants_helper_test.rb
909
- - test/unit/helpers/kaui/payment_method_helper_test.rb
910
- - test/unit/helpers/kaui/admin_tenants_helper_test.rb
911
- - test/unit/helpers/kaui/admin_allowed_users_helper_test.rb
912
- - test/unit/helpers/kaui/uuid_helper_test.rb
913
- - test/test_helper.rb
914
902
  - test/integration/kaui/integration_test_helper.rb
915
903
  - test/integration/kaui/navigation_test.rb
916
904
  - test/integration/kaui/date_helper_integration_test.rb
917
- - test/dummy/public/404.html
905
+ - test/test_helper.rb
906
+ - test/killbill_test_helper.rb
918
907
  - test/dummy/public/422.html
908
+ - test/dummy/public/404.html
919
909
  - test/dummy/public/500.html
920
910
  - test/dummy/public/favicon.ico
911
+ - test/dummy/README.rdoc
921
912
  - test/dummy/config/secrets.yml
922
- - test/dummy/config/locales/en.yml
923
- - test/dummy/config/environment.rb
913
+ - test/dummy/config/application.rb
924
914
  - test/dummy/config/routes.rb
925
- - test/dummy/config/symmetric-encryption.yml
926
- - test/dummy/config/environments/test.rb
927
- - test/dummy/config/environments/production.rb
928
- - test/dummy/config/environments/development.rb
929
- - test/dummy/config/database.yml
930
- - test/dummy/config/initializers/new_framework_defaults_5_1.rb
915
+ - test/dummy/config/initializers/secret_token.rb
931
916
  - test/dummy/config/initializers/inflections.rb
932
- - test/dummy/config/initializers/assets.rb
933
- - test/dummy/config/initializers/backtrace_silencers.rb
934
917
  - test/dummy/config/initializers/killbill_client.rb
918
+ - test/dummy/config/initializers/session_store.rb
919
+ - test/dummy/config/initializers/assets.rb
920
+ - test/dummy/config/initializers/wrap_parameters.rb
935
921
  - test/dummy/config/initializers/filter_parameter_logging.rb
922
+ - test/dummy/config/initializers/backtrace_silencers.rb
923
+ - test/dummy/config/initializers/new_framework_defaults_5_1.rb
936
924
  - test/dummy/config/initializers/mime_types.rb
937
925
  - test/dummy/config/initializers/application_controller_renderer.rb
938
- - test/dummy/config/initializers/secret_token.rb
939
926
  - test/dummy/config/initializers/cookies_serializer.rb
940
- - test/dummy/config/initializers/session_store.rb
941
- - test/dummy/config/initializers/wrap_parameters.rb
927
+ - test/dummy/config/environment.rb
928
+ - test/dummy/config/environments/test.rb
929
+ - test/dummy/config/environments/development.rb
930
+ - test/dummy/config/environments/production.rb
931
+ - test/dummy/config/symmetric-encryption.yml
942
932
  - test/dummy/config/boot.rb
943
- - test/dummy/config/application.rb
944
- - test/dummy/Rakefile
933
+ - test/dummy/config/locales/en.yml
934
+ - test/dummy/config/database.yml
935
+ - test/dummy/db/schema.rb
945
936
  - test/dummy/script/rails
946
- - test/dummy/README.rdoc
947
937
  - test/dummy/app/controllers/application_controller.rb
948
938
  - test/dummy/app/helpers/application_helper.rb
949
- - test/dummy/config.ru
939
+ - test/dummy/bin/yarn
940
+ - test/dummy/bin/setup
950
941
  - test/dummy/bin/rake
951
942
  - test/dummy/bin/bundle
952
943
  - test/dummy/bin/update
953
- - test/dummy/bin/setup
954
- - test/dummy/bin/yarn
955
944
  - test/dummy/bin/rails
956
- - test/dummy/db/schema.rb
957
- - test/killbill_test_helper.rb
958
- - test/functional/kaui/transactions_controller_test.rb
959
- - test/functional/kaui/admin_tenants_controller_test.rb
960
- - test/functional/kaui/credits_controller_test.rb
961
- - test/functional/kaui/home_controller_test.rb
962
- - test/functional/kaui/tag_definitions_controller_test.rb
963
- - test/functional/kaui/account_children_controller_test.rb
964
- - test/functional/kaui/account_timelines_controller_test.rb
965
- - test/functional/kaui/custom_fields_controller_test.rb
966
- - test/functional/kaui/charges_controller_test.rb
967
- - test/functional/kaui/account_emails_controller_test.rb
968
- - test/functional/kaui/queues_controller_test.rb
969
- - test/functional/kaui/admin_controller_test.rb
970
- - test/functional/kaui/accounts_controller_test.rb
971
- - test/functional/kaui/subscriptions_controller_test.rb
972
- - test/functional/kaui/chargebacks_controller_test.rb
973
- - test/functional/kaui/payments_controller_test.rb
945
+ - test/dummy/config.ru
946
+ - test/dummy/Rakefile
947
+ - test/functional/kaui/refunds_controller_test.rb
948
+ - test/functional/kaui/registrations_controller_test.rb
974
949
  - test/functional/kaui/bundles_controller_test.rb
975
- - test/functional/kaui/tags_controller_test.rb
976
950
  - test/functional/kaui/account_tags_controller_test.rb
951
+ - test/functional/kaui/admin_controller_test.rb
977
952
  - test/functional/kaui/functional_test_helper_nosetup.rb
978
- - test/functional/kaui/account_custom_fields_controller_test.rb
979
- - test/functional/kaui/invoice_items_controller_test.rb
980
- - test/functional/kaui/admin_allowed_users_controller_test.rb
981
- - test/functional/kaui/refunds_controller_test.rb
982
- - test/functional/kaui/audit_logs_controller_test.rb
983
- - test/functional/kaui/registrations_controller_test.rb
984
- - test/functional/kaui/invoices_controller_test.rb
985
953
  - test/functional/kaui/role_definitions_controller_test.rb
986
- - test/functional/kaui/payment_methods_controller_test.rb
954
+ - test/functional/kaui/tags_controller_test.rb
955
+ - test/functional/kaui/queues_controller_test.rb
956
+ - test/functional/kaui/home_controller_test.rb
957
+ - test/functional/kaui/accounts_controller_test.rb
987
958
  - test/functional/kaui/bundle_tags_controller_test.rb
959
+ - test/functional/kaui/credits_controller_test.rb
960
+ - test/functional/kaui/account_timelines_controller_test.rb
988
961
  - test/functional/kaui/login_proxy_controller_test.rb
989
962
  - test/functional/kaui/tenants_controller_test.rb
963
+ - test/functional/kaui/tag_definitions_controller_test.rb
964
+ - test/functional/kaui/admin_allowed_users_controller_test.rb
990
965
  - test/functional/kaui/functional_test_helper.rb
966
+ - test/functional/kaui/audit_logs_controller_test.rb
967
+ - test/functional/kaui/account_custom_fields_controller_test.rb
968
+ - test/functional/kaui/transactions_controller_test.rb
969
+ - test/functional/kaui/charges_controller_test.rb
970
+ - test/functional/kaui/chargebacks_controller_test.rb
971
+ - test/functional/kaui/payment_methods_controller_test.rb
972
+ - test/functional/kaui/subscriptions_controller_test.rb
973
+ - test/functional/kaui/custom_fields_controller_test.rb
974
+ - test/functional/kaui/account_children_controller_test.rb
975
+ - test/functional/kaui/payments_controller_test.rb
976
+ - test/functional/kaui/invoices_controller_test.rb
977
+ - test/functional/kaui/admin_tenants_controller_test.rb
978
+ - test/functional/kaui/invoice_items_controller_test.rb
979
+ - test/functional/kaui/account_emails_controller_test.rb
980
+ - test/fixtures/overdue-v1.xml
981
+ - test/fixtures/SpyCarAdvanced.xml
982
+ - test/fixtures/catalog-v1.xml
983
+ - test/fixtures/invoice_template-v1.html
984
+ - test/fixtures/catalog_translation_fr-v1.properties
985
+ - test/fixtures/stripe.yml
986
+ - test/fixtures/invoice_translation_fr-v1.properties
987
+ - test/unit/kaui/invoice_item_test.rb
988
+ - test/unit/kaui/admin_tenant_test.rb
989
+ - test/unit/kaui/base_test.rb
990
+ - test/unit/kaui/money_helper_test.rb
991
+ - test/unit/kaui/payment_test.rb
992
+ - test/unit/kaui/invoice_test.rb
993
+ - test/unit/kaui/tag_definition_test.rb
994
+ - test/unit/kaui/date_helper_test.rb
995
+ - test/unit/kaui/invoice_payment_test.rb
996
+ - test/unit/kaui/allowed_user_test.rb
997
+ - test/unit/kaui/account_test.rb
998
+ - test/unit/kaui/account_email_test.rb
999
+ - test/unit/kaui/tenant_test.rb
1000
+ - test/unit/helpers/kaui/tenants_helper_test.rb
1001
+ - test/unit/helpers/kaui/admin_tenants_helper_test.rb
1002
+ - test/unit/helpers/kaui/admin_allowed_users_helper_test.rb
1003
+ - test/unit/helpers/kaui/payment_method_helper_test.rb
1004
+ - test/unit/helpers/kaui/uuid_helper_test.rb