disco_app 0.13.7 → 0.13.8

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
- SHA256:
3
- metadata.gz: 5983b34e8629a83463ee62e1f91048a02c2e3828d15e4fe25bc692d82ea91ea4
4
- data.tar.gz: 96b93719faed53ed578a03a7fc7c0352bae2fac7d79051708e8910863c8f10e8
2
+ SHA1:
3
+ metadata.gz: b29aa5921476d4679bdc2970acca04fd5154546d
4
+ data.tar.gz: a96ca331508793b163ccd51aea3f004e3c0b184e
5
5
  SHA512:
6
- metadata.gz: 51ebc9ca906a78457968f99343b2c4baa2ead374ed8534cdbeeef2a25af93b9559a0d556a658697d3c40e960d1671df1f09506888026e2d003cb0aef57b5b846
7
- data.tar.gz: ded7d2a2698176ec21f44fbd77def3e147c26ae1220301368ae4140122b1674a3a9a8ba51ae962424e3bec020a3d1019dad89d9dc662f5fb148928e102514cab
6
+ metadata.gz: 644536c5a1e97b133a6bd2be912bf3e83d548badd234c0a3be643dec4261d09ddee227327b8ea7dd9dc82c7de804475bc5397943c64ccb877f8b7c40694aa1d3
7
+ data.tar.gz: 5f28bda6c0f07e5b4072f2a6c8271be8f1247b548d2a41f4e241e44ab53277a994daaf2350e435f1dc1ae6e78a68c21b0c6342229512c01db78414a67e8d01c8
@@ -4,6 +4,7 @@ module DiscoApp::Concerns::AuthenticatedController
4
4
 
5
5
  included do
6
6
  before_action :auto_login
7
+ before_action :check_shop_whitelist
7
8
  before_action :login_again_if_different_shop
8
9
  before_action :shopify_shop
9
10
  before_action :check_installed
@@ -68,4 +69,11 @@ module DiscoApp::Concerns::AuthenticatedController
68
69
  DiscoApp::RequestValidationService.hmac_valid?(request.query_string, ShopifyApp.configuration.secret)
69
70
  end
70
71
 
72
+ def check_shop_whitelist
73
+ if shop_session
74
+ if ENV['WHITELISTED_DOMAINS'].present? && !ENV['WHITELISTED_DOMAINS'].include?(shop_session.url)
75
+ redirect_to_login
76
+ end
77
+ end
78
+ end
71
79
  end
@@ -3,7 +3,13 @@ class DiscoApp::ApplicationCharge < ActiveRecord::Base
3
3
  belongs_to :shop
4
4
  belongs_to :subscription
5
5
 
6
- enum status: [:pending, :accepted, :declined, :expired, :active]
6
+ enum status: {
7
+ pending: 0,
8
+ accepted: 1,
9
+ declined: 2,
10
+ expired: 3,
11
+ active: 4,
12
+ }
7
13
 
8
14
  scope :active, -> { where status: statuses[:active] }
9
15
 
@@ -9,9 +9,18 @@ module DiscoApp::Concerns::Plan
9
9
 
10
10
  accepts_nested_attributes_for :plan_codes, allow_destroy: true
11
11
 
12
- enum status: [:available, :unavailable]
13
- enum plan_type: [:recurring, :one_time]
14
- enum interval: [:month, :year]
12
+ enum status: {
13
+ available: 0,
14
+ unavailable: 1
15
+ }
16
+ enum plan_type: {
17
+ recurring: 0,
18
+ one_time: 1
19
+ }
20
+ enum interval: {
21
+ month: 0,
22
+ year: 1
23
+ }
15
24
 
16
25
  scope :available, -> { where status: statuses[:available] }
17
26
 
@@ -5,7 +5,10 @@ module DiscoApp::Concerns::PlanCode
5
5
 
6
6
  belongs_to :plan
7
7
 
8
- enum status: [:available, :unavailable]
8
+ enum status: {
9
+ available: 0,
10
+ unavailable: 1
11
+ }
9
12
 
10
13
  validates_presence_of :code
11
14
  validates_presence_of :amount
@@ -16,7 +16,15 @@ module DiscoApp::Concerns::Shop
16
16
  has_many :sessions, class_name: 'DiscoApp::Session', dependent: :destroy
17
17
 
18
18
  # Define possible installation statuses as an enum.
19
- enum status: [:never_installed, :awaiting_install, :installing, :installed, :awaiting_uninstall, :uninstalling, :uninstalled]
19
+ enum status: {
20
+ never_installed: 0,
21
+ awaiting_install: 1,
22
+ installing: 2,
23
+ installed: 3,
24
+ awaiting_uninstall: 4,
25
+ uninstalling: 5,
26
+ uninstalled: 6
27
+ }
20
28
 
21
29
  # Define some useful scopes.
22
30
  scope :status, -> (status) { where status: status }
@@ -10,8 +10,15 @@ module DiscoApp::Concerns::Subscription
10
10
  has_many :one_time_charges, class_name: 'DiscoApp::ApplicationCharge', dependent: :destroy
11
11
  has_many :recurring_charges, class_name: 'DiscoApp::RecurringApplicationCharge', dependent: :destroy
12
12
 
13
- enum status: [:trial, :active, :cancelled]
14
- enum subscription_type: [:recurring, :one_time]
13
+ enum status: {
14
+ trial: 0,
15
+ active: 1,
16
+ cancelled: 2
17
+ }
18
+ enum subscription_type: {
19
+ recurring: 0,
20
+ one_time: 1
21
+ }
15
22
 
16
23
  scope :current, -> { where status: [statuses[:trial], statuses[:active]] }
17
24
 
@@ -3,7 +3,14 @@ class DiscoApp::RecurringApplicationCharge < ActiveRecord::Base
3
3
  belongs_to :shop
4
4
  belongs_to :subscription
5
5
 
6
- enum status: [:pending, :accepted, :declined, :active, :cancelled, :expired]
6
+ enum status: {
7
+ pending: 0,
8
+ accepted: 1,
9
+ declined: 2,
10
+ active: 3,
11
+ cancelled: 4,
12
+ expired: 5
13
+ }
7
14
 
8
15
  scope :active, -> { where status: statuses[:active] }
9
16
 
@@ -1,3 +1,3 @@
1
1
  module DiscoApp
2
- VERSION = '0.13.7'
2
+ VERSION = '0.13.8'
3
3
  end
@@ -223,7 +223,7 @@ class DiscoAppGenerator < Rails::Generators::Base
223
223
  # This should be the last operation, to allow all other operations to run in the initial Ruby version.
224
224
  def set_ruby_version
225
225
  copy_file 'root/.ruby-version', '.ruby-version'
226
- prepend_to_file 'Gemfile', "ruby '2.3.3'\n"
226
+ prepend_to_file 'Gemfile', "ruby '2.4.1'\n"
227
227
  end
228
228
 
229
229
  private
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: disco_app
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.7
4
+ version: 0.13.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gavin Ballard
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-03-02 00:00:00.000000000 Z
11
+ date: 2018-02-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -853,161 +853,161 @@ required_rubygems_version: !ruby/object:Gem::Requirement
853
853
  version: '0'
854
854
  requirements: []
855
855
  rubyforge_project:
856
- rubygems_version: 2.7.6
856
+ rubygems_version: 2.6.11
857
857
  signing_key:
858
858
  specification_version: 4
859
859
  summary: Rails engine for Shopify applications.
860
860
  test_files:
861
- - test/dummy/public/500.html
862
- - test/dummy/public/favicon.ico
863
- - test/dummy/public/422.html
864
- - test/dummy/public/404.html
865
- - test/dummy/bin/rake
866
- - test/dummy/bin/rails
867
- - test/dummy/bin/setup
868
- - test/dummy/bin/bundle
869
- - test/dummy/Rakefile
870
- - test/dummy/config.ru
871
- - test/dummy/app/assets/stylesheets/application.scss
872
- - test/dummy/app/assets/javascripts/application.js
873
- - test/dummy/app/jobs/products_create_job.rb
874
- - test/dummy/app/jobs/products_update_job.rb
861
+ - test/clients/disco_app/api_client_test.rb
862
+ - test/dummy/app/models/disco_app/shop.rb
863
+ - test/dummy/app/models/product.rb
864
+ - test/dummy/app/models/js_configuration.rb
865
+ - test/dummy/app/models/widget_configuration.rb
866
+ - test/dummy/app/models/cart.rb
875
867
  - test/dummy/app/jobs/disco_app/app_installed_job.rb
876
868
  - test/dummy/app/jobs/disco_app/app_uninstalled_job.rb
877
869
  - test/dummy/app/jobs/products_delete_job.rb
870
+ - test/dummy/app/jobs/products_update_job.rb
871
+ - test/dummy/app/jobs/products_create_job.rb
878
872
  - test/dummy/app/jobs/carts_update_job.rb
879
- - test/dummy/app/controllers/home_controller.rb
880
- - test/dummy/app/controllers/disco_app/admin/shops_controller.rb
873
+ - test/dummy/app/controllers/application_controller.rb
881
874
  - test/dummy/app/controllers/carrier_request_controller.rb
875
+ - test/dummy/app/controllers/disco_app/admin/shops_controller.rb
882
876
  - test/dummy/app/controllers/proxy_controller.rb
883
- - test/dummy/app/controllers/application_controller.rb
884
- - test/dummy/app/helpers/application_helper.rb
885
- - test/dummy/app/models/disco_app/shop.rb
886
- - test/dummy/app/models/product.rb
887
- - test/dummy/app/models/widget_configuration.rb
888
- - test/dummy/app/models/js_configuration.rb
889
- - test/dummy/app/models/cart.rb
890
- - test/dummy/app/views/assets/script_tag.js.erb
891
- - test/dummy/app/views/assets/widget.scss.erb
892
- - test/dummy/app/views/assets/test.js.erb
893
- - test/dummy/app/views/assets/widget.js.erb
877
+ - test/dummy/app/controllers/home_controller.rb
894
878
  - test/dummy/app/views/snippets/widget.liquid.erb
895
879
  - test/dummy/app/views/home/index.html.erb
896
- - test/dummy/db/migrate/20161105054746_create_carts.rb
897
- - test/dummy/db/migrate/20160530160739_create_asset_models.rb
898
- - test/dummy/db/migrate/20160307182229_create_products.rb
899
- - test/dummy/db/schema.rb
900
- - test/dummy/config/locales/en.yml
901
- - test/dummy/config/initializers/filter_parameter_logging.rb
902
- - test/dummy/config/initializers/assets.rb
903
- - test/dummy/config/initializers/session_store.rb
904
- - test/dummy/config/initializers/inflections.rb
905
- - test/dummy/config/initializers/mime_types.rb
906
- - test/dummy/config/initializers/wrap_parameters.rb
907
- - test/dummy/config/initializers/disco_app.rb
908
- - test/dummy/config/initializers/shopify_app.rb
909
- - test/dummy/config/initializers/shopify_session_repository.rb
910
- - test/dummy/config/initializers/backtrace_silencers.rb
911
- - test/dummy/config/initializers/omniauth.rb
912
- - test/dummy/config/initializers/cookies_serializer.rb
880
+ - test/dummy/app/views/assets/widget.scss.erb
881
+ - test/dummy/app/views/assets/widget.js.erb
882
+ - test/dummy/app/views/assets/test.js.erb
883
+ - test/dummy/app/views/assets/script_tag.js.erb
884
+ - test/dummy/app/assets/javascripts/application.js
885
+ - test/dummy/app/assets/stylesheets/application.scss
886
+ - test/dummy/app/helpers/application_helper.rb
887
+ - test/dummy/bin/rake
888
+ - test/dummy/bin/setup
889
+ - test/dummy/bin/bundle
890
+ - test/dummy/bin/rails
913
891
  - test/dummy/config/secrets.yml
914
892
  - test/dummy/config/routes.rb
915
- - test/dummy/config/database.codeship.yml
893
+ - test/dummy/config/locales/en.yml
916
894
  - test/dummy/config/environments/production.rb
917
- - test/dummy/config/environments/test.rb
918
895
  - test/dummy/config/environments/development.rb
896
+ - test/dummy/config/environments/test.rb
919
897
  - test/dummy/config/environment.rb
920
- - test/dummy/config/boot.rb
921
- - test/dummy/config/database.yml
922
898
  - test/dummy/config/application.rb
899
+ - test/dummy/config/database.yml
900
+ - test/dummy/config/database.codeship.yml
901
+ - test/dummy/config/boot.rb
902
+ - test/dummy/config/initializers/shopify_app.rb
903
+ - test/dummy/config/initializers/backtrace_silencers.rb
904
+ - test/dummy/config/initializers/mime_types.rb
905
+ - test/dummy/config/initializers/filter_parameter_logging.rb
906
+ - test/dummy/config/initializers/shopify_session_repository.rb
907
+ - test/dummy/config/initializers/session_store.rb
908
+ - test/dummy/config/initializers/wrap_parameters.rb
909
+ - test/dummy/config/initializers/assets.rb
910
+ - test/dummy/config/initializers/cookies_serializer.rb
911
+ - test/dummy/config/initializers/disco_app.rb
912
+ - test/dummy/config/initializers/omniauth.rb
913
+ - test/dummy/config/initializers/inflections.rb
914
+ - test/dummy/config.ru
915
+ - test/dummy/Rakefile
916
+ - test/dummy/public/favicon.ico
917
+ - test/dummy/public/422.html
918
+ - test/dummy/public/500.html
919
+ - test/dummy/public/404.html
920
+ - test/dummy/db/schema.rb
921
+ - test/dummy/db/migrate/20161105054746_create_carts.rb
922
+ - test/dummy/db/migrate/20160530160739_create_asset_models.rb
923
+ - test/dummy/db/migrate/20160307182229_create_products.rb
924
+ - test/integration/synchronises_test.rb
925
+ - test/models/disco_app/session_test.rb
926
+ - test/models/disco_app/renders_assets_test.rb
927
+ - test/models/disco_app/has_metafields_test.rb
928
+ - test/models/disco_app/plan_test.rb
929
+ - test/models/disco_app/shop_test.rb
930
+ - test/models/disco_app/can_be_liquified_test.rb
931
+ - test/models/disco_app/subscription_test.rb
932
+ - test/disco_app_test.rb
933
+ - test/support/test_shopify_api.rb
934
+ - test/support/test_file_fixtures.rb
935
+ - test/fixtures/products.yml
936
+ - test/fixtures/disco_app/application_charges.yml
937
+ - test/fixtures/disco_app/shops.yml
938
+ - test/fixtures/disco_app/plan_codes.yml
939
+ - test/fixtures/disco_app/subscriptions.yml
940
+ - test/fixtures/disco_app/sources.yml
941
+ - test/fixtures/disco_app/recurring_application_charges.yml
942
+ - test/fixtures/disco_app/plans.yml
943
+ - test/fixtures/widget_configurations.yml
923
944
  - test/fixtures/liquid/model.liquid
924
- - test/fixtures/api/subscriptions/valid_request.json
925
- - test/fixtures/api/widget_store/users.json
926
945
  - test/fixtures/api/widget_store/carrier_services.json
927
- - test/fixtures/api/widget_store/assets/create_test_js_response.json
928
- - test/fixtures/api/widget_store/assets/create_widget_js_response.json
929
- - test/fixtures/api/widget_store/assets/create_test_js_request.json
930
- - test/fixtures/api/widget_store/assets/update_script_tag_request.json
931
- - test/fixtures/api/widget_store/assets/create_script_tag_response.json
932
- - test/fixtures/api/widget_store/assets/create_script_tag_js_response.json
933
- - test/fixtures/api/widget_store/assets/create_widget_scss_request.json
934
- - test/fixtures/api/widget_store/assets/update_script_tag_response.json
935
- - test/fixtures/api/widget_store/assets/create_widget_liquid_request.json
936
- - test/fixtures/api/widget_store/assets/create_script_tag_js_request.json
937
- - test/fixtures/api/widget_store/assets/create_script_tag_request.json
938
- - test/fixtures/api/widget_store/assets/get_script_tags_preexisting_response.json
939
- - test/fixtures/api/widget_store/assets/create_widget_scss_response.json
940
- - test/fixtures/api/widget_store/assets/create_widget_liquid_response.json
941
- - test/fixtures/api/widget_store/assets/get_script_tags_preexisting_request.json
942
- - test/fixtures/api/widget_store/assets/get_script_tags_empty_response.json
943
- - test/fixtures/api/widget_store/assets/get_script_tags_empty_request.json
944
- - test/fixtures/api/widget_store/assets/create_widget_js_request.json
946
+ - test/fixtures/api/widget_store/webhooks.json
945
947
  - test/fixtures/api/widget_store/products/write_metafields_single_namespace_response.json
946
- - test/fixtures/api/widget_store/products/write_metafields_multiple_namespaces_request.json
947
948
  - test/fixtures/api/widget_store/products/write_metafields_multiple_namespaces_response.json
948
949
  - test/fixtures/api/widget_store/products/write_metafields_single_namespace_request.json
949
- - test/fixtures/api/widget_store/webhooks.json
950
- - test/fixtures/api/widget_store/charges/create_application_charge_response.json
951
- - test/fixtures/api/widget_store/charges/create_second_recurring_application_charge_response.json
952
- - test/fixtures/api/widget_store/charges/activate_application_charge_response.json
953
- - test/fixtures/api/widget_store/charges/create_application_charge_request.json
954
- - test/fixtures/api/widget_store/charges/create_recurring_application_charge_response.json
955
- - test/fixtures/api/widget_store/charges/get_pending_recurring_application_charge_response.json
956
- - test/fixtures/api/widget_store/charges/get_declined_recurring_application_charge_response.json
950
+ - test/fixtures/api/widget_store/products/write_metafields_multiple_namespaces_request.json
951
+ - test/fixtures/api/widget_store/charges/activate_recurring_application_charge_request.json
952
+ - test/fixtures/api/widget_store/charges/activate_application_charge_request.json
957
953
  - test/fixtures/api/widget_store/charges/get_pending_application_charge_response.json
958
954
  - test/fixtures/api/widget_store/charges/activate_recurring_application_charge_response.json
959
- - test/fixtures/api/widget_store/charges/get_accepted_recurring_application_charge_response.json
960
- - test/fixtures/api/widget_store/charges/activate_recurring_application_charge_request.json
961
- - test/fixtures/api/widget_store/charges/get_accepted_application_charge_response.json
955
+ - test/fixtures/api/widget_store/charges/create_application_charge_request.json
956
+ - test/fixtures/api/widget_store/charges/create_application_charge_response.json
957
+ - test/fixtures/api/widget_store/charges/activate_application_charge_response.json
962
958
  - test/fixtures/api/widget_store/charges/create_recurring_application_charge_request.json
963
959
  - test/fixtures/api/widget_store/charges/get_declined_application_charge_response.json
960
+ - test/fixtures/api/widget_store/charges/get_declined_recurring_application_charge_response.json
961
+ - test/fixtures/api/widget_store/charges/get_pending_recurring_application_charge_response.json
962
+ - test/fixtures/api/widget_store/charges/get_accepted_recurring_application_charge_response.json
964
963
  - test/fixtures/api/widget_store/charges/create_second_recurring_application_charge_request.json
965
- - test/fixtures/api/widget_store/charges/activate_application_charge_request.json
966
- - test/fixtures/api/widget_store/carrier_services_create.json
964
+ - test/fixtures/api/widget_store/charges/create_second_recurring_application_charge_response.json
965
+ - test/fixtures/api/widget_store/charges/get_accepted_application_charge_response.json
966
+ - test/fixtures/api/widget_store/charges/create_recurring_application_charge_response.json
967
+ - test/fixtures/api/widget_store/users.json
967
968
  - test/fixtures/api/widget_store/shop.json
968
- - test/fixtures/assets/test.js
969
- - test/fixtures/assets/test.min.js
970
- - test/fixtures/widget_configurations.yml
971
- - test/fixtures/js_configurations.yml
972
- - test/fixtures/disco_app/sources.yml
973
- - test/fixtures/disco_app/plan_codes.yml
974
- - test/fixtures/disco_app/shops.yml
975
- - test/fixtures/disco_app/application_charges.yml
976
- - test/fixtures/disco_app/subscriptions.yml
977
- - test/fixtures/disco_app/plans.yml
978
- - test/fixtures/disco_app/recurring_application_charges.yml
979
- - test/fixtures/carts.yml
969
+ - test/fixtures/api/widget_store/carrier_services_create.json
970
+ - test/fixtures/api/widget_store/assets/create_widget_liquid_request.json
971
+ - test/fixtures/api/widget_store/assets/create_test_js_response.json
972
+ - test/fixtures/api/widget_store/assets/create_widget_js_request.json
973
+ - test/fixtures/api/widget_store/assets/update_script_tag_response.json
974
+ - test/fixtures/api/widget_store/assets/create_script_tag_js_response.json
975
+ - test/fixtures/api/widget_store/assets/create_script_tag_response.json
976
+ - test/fixtures/api/widget_store/assets/create_widget_scss_request.json
977
+ - test/fixtures/api/widget_store/assets/get_script_tags_preexisting_response.json
978
+ - test/fixtures/api/widget_store/assets/create_widget_liquid_response.json
979
+ - test/fixtures/api/widget_store/assets/get_script_tags_preexisting_request.json
980
+ - test/fixtures/api/widget_store/assets/create_widget_scss_response.json
981
+ - test/fixtures/api/widget_store/assets/create_script_tag_request.json
982
+ - test/fixtures/api/widget_store/assets/create_widget_js_response.json
983
+ - test/fixtures/api/widget_store/assets/get_script_tags_empty_request.json
984
+ - test/fixtures/api/widget_store/assets/update_script_tag_request.json
985
+ - test/fixtures/api/widget_store/assets/create_script_tag_js_request.json
986
+ - test/fixtures/api/widget_store/assets/create_test_js_request.json
987
+ - test/fixtures/api/widget_store/assets/get_script_tags_empty_response.json
988
+ - test/fixtures/api/subscriptions/valid_request.json
989
+ - test/fixtures/webhooks/product_deleted.json
980
990
  - test/fixtures/webhooks/cart_updated.json
981
- - test/fixtures/webhooks/app_uninstalled.json
982
991
  - test/fixtures/webhooks/product_updated.json
983
992
  - test/fixtures/webhooks/product_created.json
984
- - test/fixtures/webhooks/product_deleted.json
985
- - test/fixtures/products.yml
986
- - test/support/test_file_fixtures.rb
987
- - test/support/test_shopify_api.rb
993
+ - test/fixtures/webhooks/app_uninstalled.json
994
+ - test/fixtures/assets/test.js
995
+ - test/fixtures/assets/test.min.js
996
+ - test/fixtures/carts.yml
997
+ - test/fixtures/js_configurations.yml
988
998
  - test/test_helper.rb
989
- - test/disco_app_test.rb
999
+ - test/jobs/disco_app/synchronise_users_job_test.rb
1000
+ - test/jobs/disco_app/synchronise_webhooks_job_test.rb
990
1001
  - test/jobs/disco_app/app_uninstalled_job_test.rb
991
1002
  - test/jobs/disco_app/synchronise_carrier_service_job_test.rb
992
- - test/jobs/disco_app/synchronise_users_job_test.rb
993
1003
  - test/jobs/disco_app/send_subscription_job_test.rb
994
- - test/jobs/disco_app/synchronise_webhooks_job_test.rb
995
1004
  - test/jobs/disco_app/app_installed_job_test.rb
1005
+ - test/controllers/proxy_controller_test.rb
996
1006
  - test/controllers/disco_app/install_controller_test.rb
997
- - test/controllers/disco_app/webhooks_controller_test.rb
1007
+ - test/controllers/disco_app/charges_controller_test.rb
998
1008
  - test/controllers/disco_app/admin/shops_controller_test.rb
999
1009
  - test/controllers/disco_app/subscriptions_controller_test.rb
1000
- - test/controllers/disco_app/charges_controller_test.rb
1001
- - test/controllers/proxy_controller_test.rb
1010
+ - test/controllers/disco_app/webhooks_controller_test.rb
1002
1011
  - test/controllers/home_controller_test.rb
1003
- - test/integration/synchronises_test.rb
1004
- - test/clients/disco_app/api_client_test.rb
1005
- - test/models/disco_app/plan_test.rb
1006
- - test/models/disco_app/has_metafields_test.rb
1007
- - test/models/disco_app/shop_test.rb
1008
- - test/models/disco_app/session_test.rb
1009
- - test/models/disco_app/subscription_test.rb
1010
- - test/models/disco_app/can_be_liquified_test.rb
1011
- - test/models/disco_app/renders_assets_test.rb
1012
- - test/services/disco_app/charges_service_test.rb
1013
1012
  - test/services/disco_app/subscription_service_test.rb
1013
+ - test/services/disco_app/charges_service_test.rb