potassium 6.0.0 → 6.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +103 -38
  3. data/.circleci/setup-rubygems.sh +3 -0
  4. data/.gitignore +2 -1
  5. data/.rubocop.yml +530 -0
  6. data/CHANGELOG.md +57 -0
  7. data/README.md +51 -45
  8. data/lib/potassium/assets/.circleci/config.yml.erb +83 -34
  9. data/lib/potassium/assets/.eslintrc.json +13 -4
  10. data/lib/potassium/assets/.github/pull_request_template.md +9 -0
  11. data/lib/potassium/assets/.rubocop.yml +13 -0
  12. data/lib/potassium/assets/README.yml +7 -7
  13. data/lib/potassium/assets/app/graphql/graphql_controller.rb +55 -0
  14. data/lib/potassium/assets/app/graphql/mutations/login_mutation.rb +23 -0
  15. data/lib/potassium/assets/app/graphql/queries/base_query.rb +4 -0
  16. data/lib/potassium/assets/app/graphql/types/base/base_argument.rb +4 -0
  17. data/lib/potassium/assets/app/graphql/types/base/base_enum.rb +4 -0
  18. data/lib/potassium/assets/app/graphql/types/base/base_field.rb +5 -0
  19. data/lib/potassium/assets/app/graphql/types/base/base_input_object.rb +5 -0
  20. data/lib/potassium/assets/app/graphql/types/base/base_interface.rb +7 -0
  21. data/lib/potassium/assets/app/graphql/types/base/base_object.rb +5 -0
  22. data/lib/potassium/assets/app/graphql/types/base/base_scalar.rb +4 -0
  23. data/lib/potassium/assets/app/graphql/types/base/base_union.rb +4 -0
  24. data/lib/potassium/assets/app/graphql/types/mutation_type.rb +10 -0
  25. data/lib/potassium/assets/app/graphql/types/query_type.rb +13 -0
  26. data/lib/potassium/assets/app/javascript/app.spec.js +1 -1
  27. data/lib/potassium/assets/app/uploaders/base_uploader.rb +1 -3
  28. data/lib/potassium/assets/app/views/shared/_gtm_body.html.erb +4 -0
  29. data/lib/potassium/assets/app/views/shared/_gtm_head.html.erb +7 -0
  30. data/lib/potassium/assets/config/graphql_playground.rb +20 -0
  31. data/lib/potassium/assets/config/puma.rb +1 -1
  32. data/lib/potassium/assets/config/shrine.rb +4 -1
  33. data/lib/potassium/assets/redis.yml +1 -2
  34. data/lib/potassium/assets/testing/rails_helper.rb +2 -0
  35. data/lib/potassium/cli/commands/create.rb +11 -19
  36. data/lib/potassium/cli_options.rb +70 -10
  37. data/lib/potassium/helpers/template-helpers.rb +4 -0
  38. data/lib/potassium/newest_version_ensurer.rb +19 -36
  39. data/lib/potassium/node_version_ensurer.rb +30 -0
  40. data/lib/potassium/recipes/admin.rb +26 -16
  41. data/lib/potassium/recipes/api.rb +92 -27
  42. data/lib/potassium/recipes/background_processor.rb +62 -18
  43. data/lib/potassium/recipes/ci.rb +9 -39
  44. data/lib/potassium/recipes/database.rb +4 -0
  45. data/lib/potassium/recipes/draper.rb +0 -9
  46. data/lib/potassium/recipes/file_storage.rb +2 -1
  47. data/lib/potassium/recipes/front_end.rb +84 -9
  48. data/lib/potassium/recipes/github.rb +93 -15
  49. data/lib/potassium/recipes/google_tag_manager.rb +94 -0
  50. data/lib/potassium/recipes/heroku.rb +42 -29
  51. data/lib/potassium/recipes/mailer.rb +18 -5
  52. data/lib/potassium/recipes/monitoring.rb +5 -0
  53. data/lib/potassium/recipes/schedule.rb +16 -1
  54. data/lib/potassium/recipes/style.rb +2 -2
  55. data/lib/potassium/templates/application.rb +5 -2
  56. data/lib/potassium/version.rb +5 -2
  57. data/potassium.gemspec +5 -2
  58. data/spec/features/api_spec.rb +25 -0
  59. data/spec/features/background_processor_spec.rb +19 -6
  60. data/spec/features/ci_spec.rb +7 -4
  61. data/spec/features/draper_spec.rb +1 -6
  62. data/spec/features/file_storage_spec.rb +5 -0
  63. data/spec/features/front_end_spec.rb +32 -1
  64. data/spec/features/github_spec.rb +53 -8
  65. data/spec/features/google_tag_manager_spec.rb +36 -0
  66. data/spec/features/graphql_spec.rb +71 -0
  67. data/spec/features/mailer_spec.rb +16 -0
  68. data/spec/features/schedule_spec.rb +11 -4
  69. data/spec/spec_helper.rb +1 -0
  70. data/spec/support/fake_octokit.rb +31 -0
  71. data/spec/support/potassium_test_helpers.rb +0 -1
  72. data/tmp/.keep +0 -0
  73. metadata +80 -15
  74. data/lib/potassium/assets/Dockerfile.ci +0 -6
  75. data/lib/potassium/assets/api/api_error_concern.rb +0 -32
  76. data/lib/potassium/assets/api/base_controller.rb +0 -7
  77. data/lib/potassium/assets/api/draper_responder.rb +0 -62
  78. data/lib/potassium/assets/api/responder.rb +0 -41
  79. data/lib/potassium/assets/bin/cibuild.erb +0 -117
  80. data/lib/potassium/assets/docker-compose.ci.yml +0 -12
  81. data/lib/potassium/assets/sidekiq_scheduler.yml +0 -9
@@ -0,0 +1,71 @@
1
+ require "spec_helper"
2
+
3
+ RSpec.describe "GraphQL" do
4
+ context 'when using only graphql' do
5
+ before :all do
6
+ drop_dummy_database
7
+ remove_project_directory
8
+ create_dummy_project("api" => :graphql)
9
+ end
10
+
11
+ it "adds graphql related gems to Gemfile" do
12
+ gemfile_content = IO.read("#{project_path}/Gemfile")
13
+ expect(gemfile_content).to include("gem 'graphql'")
14
+ expect(gemfile_content).to include("gem 'graphql_playground-rails'")
15
+ expect(gemfile_content).not_to include("gem 'graphiql'")
16
+ end
17
+
18
+ it 'installs and sets up graphql' do
19
+ schema = IO.read(
20
+ "#{project_path}/app/graphql/#{PotassiumTestHelpers::APP_NAME.dasherize.tr('-', '_')}_schema.rb"
21
+ )
22
+ expect(schema).to include(
23
+ "class #{PotassiumTestHelpers::APP_NAME.titleize.delete(' ')}Schema < GraphQL::Schema"
24
+ )
25
+
26
+ base_mutation = IO.read("#{project_path}/app/graphql/mutations/base_mutation.rb")
27
+ expect(base_mutation).to include('Types::Base::Base')
28
+ expect(base_mutation).not_to include('input_object_class')
29
+ expect(base_mutation).not_to include('RelayClassic')
30
+
31
+ controller = IO.read("#{project_path}/app/controllers/graphql_controller.rb")
32
+ expect(controller).to include('skip_before_action :verify_authenticity_token')
33
+ end
34
+
35
+ it 'sets up graphql playground' do
36
+ routes = IO.read("#{project_path}/config/routes.rb")
37
+ expect(routes).to include(
38
+ 'mount GraphqlPlayground::Rails::Engine, at: "/graphiql", graphql_path: "/graphql"'
39
+ )
40
+ config = IO.read("#{project_path}/config/initializers/graphql_playground.rb")
41
+ expect(config).to include('GraphqlPlayground::Rails.configure do |config|')
42
+ end
43
+ end
44
+
45
+ context 'when using authentication' do
46
+ before :all do
47
+ drop_dummy_database
48
+ remove_project_directory
49
+ create_dummy_project("api" => :graphql, "devise": true)
50
+ end
51
+
52
+ it 'gathers jwt gem' do
53
+ gemfile_content = IO.read("#{project_path}/Gemfile")
54
+ expect(gemfile_content).to include("gem 'jwt'")
55
+ end
56
+
57
+ it 'Adds auth related mutation and controller' do
58
+ controller = IO.read("#{project_path}/app/controllers/graphql_controller.rb")
59
+ expect(controller).to include('get_current_user')
60
+ expect(controller).to include(
61
+ "#{PotassiumTestHelpers::APP_NAME.titleize.delete(' ')}Schema.execute"
62
+ )
63
+
64
+ mutation_type = IO.read("#{project_path}/app/graphql/types/mutation_type.rb")
65
+ expect(mutation_type).to include('field :login, mutation: Mutations::LoginMutation')
66
+
67
+ login_mutation = IO.read("#{project_path}/app/graphql/mutations/login_mutation.rb")
68
+ expect(login_mutation).to include('class Mutations::LoginMutation < Mutations::BaseMutation')
69
+ end
70
+ end
71
+ end
@@ -4,6 +4,7 @@ RSpec.describe "Mailer" do
4
4
  let(:gemfile) { IO.read("#{project_path}/Gemfile") }
5
5
  let(:mailer_config) { IO.read("#{project_path}/config/mailer.rb") }
6
6
  let(:dev_config) { IO.read("#{project_path}/config/environments/development.rb") }
7
+ let(:sidekiq_config) { IO.read("#{project_path}/config/sidekiq.yml") }
7
8
 
8
9
  before(:all) { drop_dummy_database }
9
10
 
@@ -26,6 +27,8 @@ RSpec.describe "Mailer" do
26
27
  expect(dev_config).to include("sendgrid_dev_settings = {")
27
28
  expect(dev_config).to include("api_key: ENV['SENDGRID_API_KEY']")
28
29
  end
30
+
31
+ it { expect(sidekiq_config).to include("- mailers") }
29
32
  end
30
33
 
31
34
  context "when selecting aws_ses as mailer" do
@@ -38,5 +41,18 @@ RSpec.describe "Mailer" do
38
41
  it { expect(gemfile).to include("letter_opener") }
39
42
  it { expect(mailer_config).to include("delivery_method = :aws_sdk") }
40
43
  it { expect(dev_config).to include("delivery_method = :letter_opener") }
44
+ it { expect(sidekiq_config).to include("- mailers") }
45
+ end
46
+
47
+ context "when selecting a mailer and sidekiq" do
48
+ before :all do
49
+ drop_dummy_database
50
+ remove_project_directory
51
+ create_dummy_project(
52
+ "background_processor" => true, "email_service" => 'sendgrid'
53
+ )
54
+ end
55
+
56
+ it { expect(sidekiq_config).to include("- mailers") }
41
57
  end
42
58
  end
@@ -1,10 +1,14 @@
1
1
  require "spec_helper"
2
2
 
3
3
  RSpec.describe "schedule" do
4
+ let(:sidekiq_config) { IO.read("#{project_path}/config/sidekiq.yml") }
5
+
4
6
  before :all do
5
7
  drop_dummy_database
6
8
  remove_project_directory
7
- create_dummy_project("schedule" => true)
9
+ create_dummy_project(
10
+ "schedule" => true, "background_processor" => true, "email_service" => "sendgrid"
11
+ )
8
12
  end
9
13
 
10
14
  it "adds the sidekiq-scheduler gem to Gemfile" do
@@ -12,9 +16,12 @@ RSpec.describe "schedule" do
12
16
  expect(gemfile_content).to include("gem 'sidekiq-scheduler'")
13
17
  end
14
18
 
15
- it "creates the config with schedule" do
16
- initializer_content = IO.read("#{project_path}/config/sidekiq.yml")
17
- expect(initializer_content).to include(":schedule:")
19
+ it "adds schedule section to sidekiq config" do
20
+ expect(sidekiq_config).to include(":schedule:")
21
+ end
22
+
23
+ it "doesn't remove mailers queue" do
24
+ expect(sidekiq_config).to include("- mailers")
18
25
  end
19
26
 
20
27
  it "adds scheduler ui to the sidekiq initializer" do
data/spec/spec_helper.rb CHANGED
@@ -33,5 +33,6 @@ RSpec.configure do |config|
33
33
  config.before(:each) do
34
34
  FakeGithub.clear!
35
35
  FakeHeroku.clear!
36
+ FakeOctokit.clear!
36
37
  end
37
38
  end
@@ -0,0 +1,31 @@
1
+ class FakeOctokit
2
+ RECORDER = File.expand_path(File.join('..', '..', 'tmp', 'octokit'), File.dirname(__FILE__))
3
+
4
+ def initialize(options); end
5
+
6
+ def create_repository(repo_name, options)
7
+ File.open(RECORDER, 'a') do |file|
8
+ file.write "#{repo_name}, #{options.map { |key, value| "#{key}: #{value}" }}"
9
+ end
10
+ end
11
+
12
+ def self.clear!
13
+ FileUtils.rm_rf RECORDER
14
+ end
15
+
16
+ def self.has_created_repo?(repo_name)
17
+ File.read(RECORDER).include? repo_name
18
+ end
19
+
20
+ def self.has_created_private_repo?(repo_name)
21
+ has_created_repo?(repo_name) && File.read(RECORDER).include?("private: true")
22
+ end
23
+
24
+ def self.has_created_repo_for_org?(repo_name, org_name)
25
+ has_created_repo?(repo_name) && File.read(RECORDER).include?("organization: #{org_name}")
26
+ end
27
+
28
+ def self.has_created_private_repo_for_org?(repo_name, org_name)
29
+ has_created_private_repo?(repo_name) && has_created_repo_for_org?(repo_name, org_name)
30
+ end
31
+ end
@@ -22,7 +22,6 @@ module PotassiumTestHelpers
22
22
  add_project_bin_to_path
23
23
  full_arguments = hash_to_arguments(create_arguments(true).merge(arguments))
24
24
  run_command("#{potassium_bin} create #{APP_NAME} #{full_arguments}")
25
- on_project { run_command("hound rules update ruby --local") }
26
25
  end
27
26
  end
28
27
  end
data/tmp/.keep ADDED
File without changes
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: potassium
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.0
4
+ version: 6.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - juliogarciag
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-25 00:00:00.000000000 Z
11
+ date: 2021-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '10.0'
47
+ version: '13.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '10.0'
54
+ version: '13.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -86,16 +86,16 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.65.0
89
+ version: '1.9'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.65.0
96
+ version: '1.9'
97
97
  - !ruby/object:Gem::Dependency
98
- name: rubocop-rspec
98
+ name: rubocop-performance
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - ">="
@@ -108,6 +108,34 @@ dependencies:
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rubocop-rails
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: rubocop-rspec
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '2.2'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '2.2'
111
139
  - !ruby/object:Gem::Dependency
112
140
  name: gems
113
141
  requirement: !ruby/object:Gem::Requirement
@@ -164,6 +192,20 @@ dependencies:
164
192
  - - "~>"
165
193
  - !ruby/object:Gem::Version
166
194
  version: '0.2'
195
+ - !ruby/object:Gem::Dependency
196
+ name: octokit
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - "~>"
200
+ - !ruby/object:Gem::Version
201
+ version: '4.18'
202
+ type: :runtime
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - "~>"
207
+ - !ruby/object:Gem::Version
208
+ version: '4.18'
167
209
  - !ruby/object:Gem::Dependency
168
210
  name: rails
169
211
  requirement: !ruby/object:Gem::Requirement
@@ -202,10 +244,12 @@ extensions: []
202
244
  extra_rdoc_files: []
203
245
  files:
204
246
  - ".circleci/config.yml"
247
+ - ".circleci/setup-rubygems.sh"
205
248
  - ".editorconfig"
206
249
  - ".gitignore"
207
250
  - ".node-version"
208
251
  - ".rspec"
252
+ - ".rubocop.yml"
209
253
  - ".ruby-version"
210
254
  - CHANGELOG.md
211
255
  - Gemfile
@@ -223,10 +267,10 @@ files:
223
267
  - lib/potassium/assets/.editorconfig
224
268
  - lib/potassium/assets/.env.development.erb
225
269
  - lib/potassium/assets/.eslintrc.json
270
+ - lib/potassium/assets/.github/pull_request_template.md
226
271
  - lib/potassium/assets/.pryrc
227
272
  - lib/potassium/assets/.rubocop.yml
228
273
  - lib/potassium/assets/.stylelintrc.json
229
- - lib/potassium/assets/Dockerfile.ci
230
274
  - lib/potassium/assets/Makefile.erb
231
275
  - lib/potassium/assets/Procfile
232
276
  - lib/potassium/assets/README.md.erb
@@ -237,28 +281,38 @@ files:
237
281
  - lib/potassium/assets/active_admin/comment_policy.rb
238
282
  - lib/potassium/assets/active_admin/init_activeadmin_vue.rb
239
283
  - lib/potassium/assets/active_admin/pundit_page_policy.rb
240
- - lib/potassium/assets/api/api_error_concern.rb
241
- - lib/potassium/assets/api/base_controller.rb
242
- - lib/potassium/assets/api/draper_responder.rb
243
- - lib/potassium/assets/api/responder.rb
284
+ - lib/potassium/assets/app/graphql/graphql_controller.rb
285
+ - lib/potassium/assets/app/graphql/mutations/login_mutation.rb
286
+ - lib/potassium/assets/app/graphql/queries/base_query.rb
287
+ - lib/potassium/assets/app/graphql/types/base/base_argument.rb
288
+ - lib/potassium/assets/app/graphql/types/base/base_enum.rb
289
+ - lib/potassium/assets/app/graphql/types/base/base_field.rb
290
+ - lib/potassium/assets/app/graphql/types/base/base_input_object.rb
291
+ - lib/potassium/assets/app/graphql/types/base/base_interface.rb
292
+ - lib/potassium/assets/app/graphql/types/base/base_object.rb
293
+ - lib/potassium/assets/app/graphql/types/base/base_scalar.rb
294
+ - lib/potassium/assets/app/graphql/types/base/base_union.rb
295
+ - lib/potassium/assets/app/graphql/types/mutation_type.rb
296
+ - lib/potassium/assets/app/graphql/types/query_type.rb
244
297
  - lib/potassium/assets/app/javascript/app.spec.js
245
298
  - lib/potassium/assets/app/mailers/application_mailer.rb
246
299
  - lib/potassium/assets/app/uploaders/base_uploader.rb
247
300
  - lib/potassium/assets/app/uploaders/image_uploader.rb
248
- - lib/potassium/assets/bin/cibuild.erb
301
+ - lib/potassium/assets/app/views/shared/_gtm_body.html.erb
302
+ - lib/potassium/assets/app/views/shared/_gtm_head.html.erb
249
303
  - lib/potassium/assets/bin/release
250
304
  - lib/potassium/assets/bin/setup.erb
251
305
  - lib/potassium/assets/bin/setup_heroku.erb
252
306
  - lib/potassium/assets/bin/update.erb
253
307
  - lib/potassium/assets/config/database_mysql.yml.erb
254
308
  - lib/potassium/assets/config/database_postgresql.yml.erb
309
+ - lib/potassium/assets/config/graphql_playground.rb
255
310
  - lib/potassium/assets/config/mailer.rb.erb
256
311
  - lib/potassium/assets/config/puma.rb
257
312
  - lib/potassium/assets/config/secrets.yml.erb
258
313
  - lib/potassium/assets/config/sentry.rb.erb
259
314
  - lib/potassium/assets/config/shrine.rb
260
315
  - lib/potassium/assets/config/storage.yml
261
- - lib/potassium/assets/docker-compose.ci.yml
262
316
  - lib/potassium/assets/docker-compose.yml
263
317
  - lib/potassium/assets/es-CL.yml
264
318
  - lib/potassium/assets/lib/tasks/auto_annotate_models.rake
@@ -270,7 +324,6 @@ files:
270
324
  - lib/potassium/assets/seeds/seeds.rb
271
325
  - lib/potassium/assets/sidekiq.rb.erb
272
326
  - lib/potassium/assets/sidekiq.yml
273
- - lib/potassium/assets/sidekiq_scheduler.yml
274
327
  - lib/potassium/assets/testing/.rspec
275
328
  - lib/potassium/assets/testing/platanus.png
276
329
  - lib/potassium/assets/testing/rails_helper.rb
@@ -292,6 +345,7 @@ files:
292
345
  - lib/potassium/helpers/template-helpers.rb
293
346
  - lib/potassium/helpers/variable-helpers.rb
294
347
  - lib/potassium/newest_version_ensurer.rb
348
+ - lib/potassium/node_version_ensurer.rb
295
349
  - lib/potassium/recipe.rb
296
350
  - lib/potassium/recipes/admin.rb
297
351
  - lib/potassium/recipes/annotate.rb
@@ -311,10 +365,12 @@ files:
311
365
  - lib/potassium/recipes/file_storage.rb
312
366
  - lib/potassium/recipes/front_end.rb
313
367
  - lib/potassium/recipes/github.rb
368
+ - lib/potassium/recipes/google_tag_manager.rb
314
369
  - lib/potassium/recipes/heroku.rb
315
370
  - lib/potassium/recipes/i18n.rb
316
371
  - lib/potassium/recipes/listen.rb
317
372
  - lib/potassium/recipes/mailer.rb
373
+ - lib/potassium/recipes/monitoring.rb
318
374
  - lib/potassium/recipes/node.rb
319
375
  - lib/potassium/recipes/power_types.rb
320
376
  - lib/potassium/recipes/pry.rb
@@ -342,6 +398,7 @@ files:
342
398
  - potassium.gemspec
343
399
  - spec/fakes/bin/heroku
344
400
  - spec/fakes/bin/hub
401
+ - spec/features/api_spec.rb
345
402
  - spec/features/background_processor_spec.rb
346
403
  - spec/features/ci_spec.rb
347
404
  - spec/features/data_migrate_spec.rb
@@ -352,6 +409,8 @@ files:
352
409
  - spec/features/file_storage_spec.rb
353
410
  - spec/features/front_end_spec.rb
354
411
  - spec/features/github_spec.rb
412
+ - spec/features/google_tag_manager_spec.rb
413
+ - spec/features/graphql_spec.rb
355
414
  - spec/features/heroku_spec.rb
356
415
  - spec/features/i18n_spec.rb
357
416
  - spec/features/mailer_spec.rb
@@ -363,7 +422,9 @@ files:
363
422
  - spec/spec_helper.rb
364
423
  - spec/support/fake_github.rb
365
424
  - spec/support/fake_heroku.rb
425
+ - spec/support/fake_octokit.rb
366
426
  - spec/support/potassium_test_helpers.rb
427
+ - tmp/.keep
367
428
  homepage: https://github.com/platanus/potassium
368
429
  licenses:
369
430
  - MIT
@@ -390,6 +451,7 @@ summary: An application generator from Platanus
390
451
  test_files:
391
452
  - spec/fakes/bin/heroku
392
453
  - spec/fakes/bin/hub
454
+ - spec/features/api_spec.rb
393
455
  - spec/features/background_processor_spec.rb
394
456
  - spec/features/ci_spec.rb
395
457
  - spec/features/data_migrate_spec.rb
@@ -400,6 +462,8 @@ test_files:
400
462
  - spec/features/file_storage_spec.rb
401
463
  - spec/features/front_end_spec.rb
402
464
  - spec/features/github_spec.rb
465
+ - spec/features/google_tag_manager_spec.rb
466
+ - spec/features/graphql_spec.rb
403
467
  - spec/features/heroku_spec.rb
404
468
  - spec/features/i18n_spec.rb
405
469
  - spec/features/mailer_spec.rb
@@ -411,4 +475,5 @@ test_files:
411
475
  - spec/spec_helper.rb
412
476
  - spec/support/fake_github.rb
413
477
  - spec/support/fake_heroku.rb
478
+ - spec/support/fake_octokit.rb
414
479
  - spec/support/potassium_test_helpers.rb
@@ -1,6 +0,0 @@
1
- FROM platanus/ruby:2.7
2
-
3
- RUN mkdir /app
4
- WORKDIR /app
5
-
6
- ADD . /app