pageflow-support 15.1.2 → 15.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: ce2c0aaf4361f2210f379214e50b84c88672fd7c
4
- data.tar.gz: 53f9858177255c4a00f0f1fbd348ef1679e1cc81
2
+ SHA256:
3
+ metadata.gz: ff6e2a042c492b5d356ab03b25507bee3ef47042a3b22f6509b1634cd2363302
4
+ data.tar.gz: 1e50597d286d416c70c0b5b2cf2e79b7fc2a060dc06d46139324d56ab7d1924b
5
5
  SHA512:
6
- metadata.gz: b10014ac6da2f26ff1729c661a0e4a28529b8e47108760ed532889739f00b78c039d5f0aaf9cf0ff9a7c733b4945d6c47752b0ee4377a001753c956e6a0c9114
7
- data.tar.gz: 7a87b0af5869cc78d10a93a1e9d0817f85710cf4f3d9356fe0ddf923832ea94001ab42b0522dce15fcd7088ac39ce620246b4dc38f982947dc5eb76d6a011bb0
6
+ metadata.gz: 973979be6e1ca5dfb259083919c52494b4f59d711367bba48cfed2926744aabc8b978d5a8b91a8a2e61dda446eef8699866122edf01dcc7e284c7f221fe23dd9
7
+ data.tar.gz: 3a109fa870dc91d1267fb8e88c0887def41b5b7336043d82ab2b31a96bde1ad34279c427c01dff37989d8f72cdfcf5e3d992235225b308f6c993dc40cf565df2
@@ -7,6 +7,20 @@ module Pageflow
7
7
  def destroy_button
8
8
  node.find('.destroy')
9
9
  end
10
+
11
+ def back_button
12
+ node.find('.back')
13
+ end
14
+
15
+ def input_value(label_text)
16
+ node.find_field(label_text).value
17
+ end
18
+
19
+ def change_input(label_text, value)
20
+ field = node.find_field(label_text)
21
+ field.fill_in(with: value)
22
+ field.native.send_keys(:tab)
23
+ end
10
24
  end
11
25
  end
12
26
  end
@@ -1,4 +1,5 @@
1
1
  require 'pageflow/version'
2
+ require 'pageflow/dummy/exit_on_failure_patch'
2
3
 
3
4
  module Pageflow
4
5
  module Dummy
@@ -10,7 +11,8 @@ module Pageflow
10
11
  puts("Dummy directory #{directory} exists.")
11
12
  else
12
13
  system("bundle exec rails new #{directory} " \
13
- "--template #{template_path} #{rails_new_options}")
14
+ "--template #{template_path} #{rails_new_options}") ||
15
+ raise('Error generating dummy app.')
14
16
  end
15
17
 
16
18
  require(File.join(ENV['RAILS_ROOT'], 'config', 'environment'))
@@ -0,0 +1,25 @@
1
+ require 'rails/generators'
2
+
3
+ # Thor exits with 0, when an error occurs. This behavior is deprecated
4
+ # in 1.0 [1], but has not yet changed. As a result the dummy app
5
+ # generation is not aborted and tests fail due to confusing follow up
6
+ # errors. Rails provides an `abort_on_failure` option for `rake` and
7
+ # `generate` actions [2], but it needs to be added to each such
8
+ # action. In particular, generating the dummy app invokes other
9
+ # generators, which we do not have control over.
10
+ #
11
+ # To work around this problem, we override the default behavior for
12
+ # all generators and make them fail loudly.
13
+ #
14
+ # [1] https://github.com/erikhuda/thor/blob/master/CHANGELOG.md#100
15
+ # [2] https://github.com/rails/rails/pull/34420/
16
+
17
+ module Rails
18
+ module Generators
19
+ class Base
20
+ def self.exit_on_failure?
21
+ true
22
+ end
23
+ end
24
+ end
25
+ end
@@ -35,8 +35,7 @@ gsub_file('app/assets/javascripts/application.js', %r'//=.*', '')
35
35
 
36
36
  # Recreate db. Ignore if it does not exist.
37
37
 
38
- log :rake, 'db:drop:all'
39
- in_root { run('rake db:environment:set db:drop:all 2> /dev/null', verbose: false) }
38
+ in_root { run('rake db:environment:set db:drop:all', capture: true, abort_on_failure: false) }
40
39
  rake 'db:create:all'
41
40
 
42
41
  # Install pageflow and the tested engine via their generators.
@@ -10,7 +10,12 @@ module Pageflow
10
10
 
11
11
  describe '#editor_fragment_renderer' do
12
12
  it 'renders head fragment without error' do
13
- entry = DraftEntry.new(FactoryBot.create(:entry))
13
+ entry = DraftEntry.new(
14
+ FactoryBot.create(
15
+ :entry,
16
+ type_name: entry_type.name
17
+ )
18
+ )
14
19
 
15
20
  expect {
16
21
  entry_type.editor_fragment_renderer.head_fragment(entry)
@@ -18,7 +23,12 @@ module Pageflow
18
23
  end
19
24
 
20
25
  it 'renders body fragment without error' do
21
- entry = DraftEntry.new(FactoryBot.create(:entry))
26
+ entry = DraftEntry.new(
27
+ FactoryBot.create(
28
+ :entry,
29
+ type_name: entry_type.name
30
+ )
31
+ )
22
32
 
23
33
  expect {
24
34
  entry_type.editor_fragment_renderer.body_fragment(entry)
@@ -26,7 +36,12 @@ module Pageflow
26
36
  end
27
37
 
28
38
  it 'renders seed fragment without error' do
29
- entry = DraftEntry.new(FactoryBot.create(:entry))
39
+ entry = DraftEntry.new(
40
+ FactoryBot.create(
41
+ :entry,
42
+ type_name: entry_type.name
43
+ )
44
+ )
30
45
 
31
46
  expect {
32
47
  entry_type.editor_fragment_renderer.seed_fragment(entry)
@@ -18,7 +18,7 @@ module Pageflow
18
18
  helper.extend(InfoBoxHelper)
19
19
  helper.extend(BackgroundImageHelper)
20
20
  helper.extend(EntryJsonSeedHelper)
21
- helper.extend(PageBackgroundAssetHelper)
21
+ helper.extend(PageflowPaged::PageBackgroundAssetHelper)
22
22
  helper.extend(PagesHelper)
23
23
  helper.extend(VideoFilesHelper)
24
24
 
@@ -0,0 +1,23 @@
1
+ RSpec.shared_context 'fake translations' do
2
+ around(:example) do |example|
3
+ i18n_backend_backup = I18n.backend
4
+ @fake_i18n_backend = I18n::Backend::Simple.new
5
+
6
+ I18n.backend = @fake_i18n_backend
7
+ example.run
8
+ I18n.backend = i18n_backend_backup
9
+ end
10
+
11
+ def translation(locale, key_path, value)
12
+ keys = key_path.split('.')
13
+ last_key = keys.pop
14
+ data = {}
15
+
16
+ inner = keys.inject(data) do |result, key|
17
+ result[key] = {}
18
+ end
19
+
20
+ inner[last_key] = value
21
+ @fake_i18n_backend.store_translations(locale, data)
22
+ end
23
+ end
@@ -1,13 +1,21 @@
1
1
  RSpec.configure do |config|
2
- config.before(:each) do
2
+ config.before(:all) do
3
3
  Dir.glob(Rails.root.join('public', 'system', 's3', '*')).each do |f|
4
4
  FileUtils.rm_r(f)
5
5
  end
6
6
  end
7
7
 
8
- config.before(:each, stub_paperclip: true) do
9
- allow_any_instance_of(Paperclip::Attachment).to receive(:post_process)
10
- allow(Paperclip).to receive(:run).and_return('100x100')
8
+ config.after(:each, unstub_paperclip: true) do
9
+ Dir.glob(Rails.root.join('public', 'system', 's3', '*')).each do |f|
10
+ FileUtils.rm_r(f)
11
+ end
12
+ end
13
+
14
+ config.before(:each) do |example|
15
+ unless example.metadata[:unstub_paperclip] || example.metadata[:js]
16
+ allow_any_instance_of(Paperclip::Attachment).to receive(:post_process)
17
+ allow(Paperclip).to receive(:run).and_return('100x100')
18
+ end
11
19
  end
12
20
  end
13
21
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pageflow-support
3
3
  version: !ruby/object:Gem::Version
4
- version: 15.1.2
4
+ version: 15.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Codevise Solutions Ltd
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-01 00:00:00.000000000 Z
11
+ date: 2021-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pageflow
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 15.1.2
19
+ version: 15.4.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 15.1.2
26
+ version: 15.4.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: mysql2
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -201,6 +201,7 @@ files:
201
201
  - pageflow/dummy.rb
202
202
  - pageflow/dummy/app.rb
203
203
  - pageflow/dummy/config/pageflow.rb
204
+ - pageflow/dummy/exit_on_failure_patch.rb
204
205
  - pageflow/dummy/rails_template.rb
205
206
  - pageflow/dummy/templates/add_custom_fields.rb
206
207
  - pageflow/dummy/templates/create_test_multi_attachment_file.rb
@@ -223,6 +224,7 @@ files:
223
224
  - pageflow/matchers/have_meta_tag.rb
224
225
  - pageflow/rails_version.rb
225
226
  - pageflow/render_page_test_helper.rb
227
+ - pageflow/shared_contexts/fake_translations.rb
226
228
  - pageflow/support.rb
227
229
  - pageflow/support/config/capybara.rb
228
230
  - pageflow/support/config/paperclip.rb
@@ -249,7 +251,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
249
251
  version: '0'
250
252
  requirements: []
251
253
  rubyforge_project:
252
- rubygems_version: 2.6.11
254
+ rubygems_version: 2.7.9
253
255
  signing_key:
254
256
  specification_version: 4
255
257
  summary: Spec support for Pageflow extensions.