Skip to content

Instantly share code, notes, and snippets.

@joebutler2
Created September 20, 2019 16:15
Show Gist options
  • Save joebutler2/4ed1b2d3d7111d0754ab15d6c1ab9f13 to your computer and use it in GitHub Desktop.
Save joebutler2/4ed1b2d3d7111d0754ab15d6c1ab9f13 to your computer and use it in GitHub Desktop.
Upgrading refinery CMS to support Rails 6, now using latest version of database_cleaner. The errors are more consistent now.
1) the Admin Images Tab When there are many images has behaviour: uploads images when the image type is acceptable the image is uploaded
Got 1 failure and 1 other error:
Shared Example Group: "uploads images" called from ./images/spec/features/refinery/admin/images_spec.rb:39
1.1) Failure/Error: DEFAULT_FAILURE_NOTIFIER = lambda { |failure, _opts| raise failure }
expected `Refinery::Image.count` to have changed by 1, but was changed by 0
# ./images/spec/support/shared_examples/image_uploader.rb:24:in `block (3 levels) in <top (required)>'
# ./core/spec/support/database_cleaner.rb:18:in `block (2 levels) in <top (required)>'
1.2) Failure/Error: row = @stmt.step
ActiveRecord::StatementInvalid:
SQLite3::BusyException: database is locked: DELETE FROM "refinery_image_translations";
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/sqlite3-1.4.1/lib/sqlite3/resultset.rb:170:in `step'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/sqlite3-1.4.1/lib/sqlite3/resultset.rb:170:in `next_hash'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/sqlite3-1.4.1/lib/sqlite3/resultset.rb:105:in `next'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/sqlite3-1.4.1/lib/sqlite3/resultset.rb:133:in `each'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/sqlite3-1.4.1/lib/sqlite3/database.rb:202:in `to_a'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/sqlite3-1.4.1/lib/sqlite3/database.rb:202:in `block in execute'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/sqlite3-1.4.1/lib/sqlite3/database.rb:151:in `prepare'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/sqlite3-1.4.1/lib/sqlite3/database.rb:193:in `execute'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/active_record/truncation.rb:97:in `delete_table'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/active_record/truncation.rb:105:in `block in truncate_tables'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/active_record/truncation.rb:105:in `each'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/active_record/truncation.rb:105:in `truncate_tables'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/active_record/truncation.rb:239:in `block in clean'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/active_record/truncation.rb:235:in `clean'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/base.rb:94:in `clean'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/configuration.rb:79:in `block in clean'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/configuration.rb:79:in `each'
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/database_cleaner-1.7.0/lib/database_cleaner/configuration.rb:79:in `clean'
# ./core/spec/support/database_cleaner.rb:13:in `block (2 levels) in <top (required)>'
# ./core/spec/support/database_cleaner.rb:18:in `block (2 levels) in <top (required)>'
# ------------------
# --- Caused by: ---
# SQLite3::BusyException:
# database is locked
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/sqlite3-1.4.1/lib/sqlite3/resultset.rb:170:in `step'
2) the Admin Images Tab When there are no images has behaviour: uploads images when the image type is acceptable the image is uploaded
Failure/Error: DEFAULT_FAILURE_NOTIFIER = lambda { |failure, _opts| raise failure }
expected `Refinery::Image.count` to have changed by 1, but was changed by 0
Shared Example Group: "uploads images" called from ./images/spec/features/refinery/admin/images_spec.rb:16
# ./images/spec/support/shared_examples/image_uploader.rb:24:in `block (3 levels) in <top (required)>'
# ./core/spec/support/database_cleaner.rb:18:in `block (2 levels) in <top (required)>'
3) the Admin Images Tab When there is one image has behaviour: uploads images when the image type is acceptable the image is uploaded
Failure/Error: DEFAULT_FAILURE_NOTIFIER = lambda { |failure, _opts| raise failure }
expected `Refinery::Image.count` to have changed by 1, but was changed by 0
Shared Example Group: "uploads images" called from ./images/spec/features/refinery/admin/images_spec.rb:27
# ./images/spec/support/shared_examples/image_uploader.rb:24:in `block (3 levels) in <top (required)>'
# ./core/spec/support/database_cleaner.rb:18:in `block (2 levels) in <top (required)>'
4) with multiple locales redirects should redirect to default locale slug
Failure/Error: visit "/#{ru_page_slug_encoded}"
ActionController::RoutingError:
No route matches [GET] "/%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D0%B8"
# /Users/jbutler/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/request_store-1.4.1/lib/request_store/middleware.rb:19:in `call'
# ./pages/spec/features/refinery/pages_spec.rb:402:in `block (3 levels) in <module:Refinery>'
5) Page Visual Editor - Add Image When there are no images has behaviour: uploads images when the image type is acceptable the image is uploaded
Failure/Error: DEFAULT_FAILURE_NOTIFIER = lambda { |failure, _opts| raise failure }
expected `Refinery::Image.count` to have changed by 1, but was changed by 0
Shared Example Group: "uploads images" called from ./images/spec/features/refinery/admin/images_spec.rb:52
# ./images/spec/support/shared_examples/image_uploader.rb:24:in `block (3 levels) in <top (required)>'
# ./core/spec/support/database_cleaner.rb:18:in `block (2 levels) in <top (required)>'
6) Page Visual Editor - Add Image When there is one image has behaviour: uploads images when the image type is acceptable the image is uploaded
Failure/Error: DEFAULT_FAILURE_NOTIFIER = lambda { |failure, _opts| raise failure }
expected `Refinery::Image.count` to have changed by 1, but was changed by 0
Shared Example Group: "uploads images" called from ./images/spec/features/refinery/admin/images_spec.rb:60
# ./images/spec/support/shared_examples/image_uploader.rb:24:in `block (3 levels) in <top (required)>'
# ./core/spec/support/database_cleaner.rb:18:in `block (2 levels) in <top (required)>'
7) Page Visual Editor - Add Image When there are many images has behaviour: uploads images when the image type is acceptable the image is uploaded
Failure/Error: DEFAULT_FAILURE_NOTIFIER = lambda { |failure, _opts| raise failure }
expected `Refinery::Image.count` to have changed by 1, but was changed by 0
Shared Example Group: "uploads images" called from ./images/spec/features/refinery/admin/images_spec.rb:69
# ./images/spec/support/shared_examples/image_uploader.rb:24:in `block (3 levels) in <top (required)>'
# ./core/spec/support/database_cleaner.rb:18:in `block (2 levels) in <top (required)>'
8) Crudify xhr_paging performs ajax paging of index
Failure/Error: expect(page).to have_selector('ul#image_grid li > img', count: 1)
expected to find css "ul#image_grid li > img" 1 time but there were no matches
# ./core/spec/features/refinery/admin/xhr_paging_spec.rb:21:in `block (3 levels) in <module:Refinery>'
# ./core/spec/support/database_cleaner.rb:18:in `block (2 levels) in <top (required)>'
9) Resources new/create when the file mime_type is acceptable the file is uploaded
Failure/Error: expect(uploading_a_file).to change(Refinery::Resource, :count).by(1)
expected `Refinery::Resource.count` to have changed by 1, but was changed by 0
# ./resources/spec/features/refinery/admin/resources_spec.rb:42:in `block (4 levels) in <module:Admin>'
# ./core/spec/support/database_cleaner.rb:18:in `block (2 levels) in <top (required)>'
10) Resources download succeeds
Failure/Error: click_link 'Download this file'
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible link "Download this file"
# ./resources/spec/features/refinery/admin/resources_spec.rb:160:in `block (3 levels) in <module:Admin>'
11) Resources download when the extension is mounted with a named space succeeds
Failure/Error: click_link 'Download this file'
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible link "Download this file"
# ./resources/spec/features/refinery/admin/resources_spec.rb:182:in `block (4 levels) in <module:Admin>'
12) Resources when no files invites to upload file
Failure/Error: expect(page).to have_content('There are no files yet. Click "Upload new file" to add your first file.')
expected to find text "There are no files yet. Click \"Upload new file\" to add your first file." in "Switch to your website\nCompany Name\nPages Files Images\nFor full functionality of this page it is necessary to enable JavaScript. Here are the instructions for how to enable JavaScript in your web browser\nSeptember 20, 2019\nCape Town Tide Table cape-town-tide-table.pdf - 21.5 KB\nUpload new file"
# ./resources/spec/features/refinery/admin/resources_spec.rb:13:in `block (3 levels) in <module:Admin>'
13) Resources edit/update updates file
Failure/Error: click_link 'Edit this file'
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible link "Edit this file"
# ./resources/spec/features/refinery/admin/resources_spec.rb:103:in `block (3 levels) in <module:Admin>'
14) Resources edit/update translate can have a second locale added to it
Failure/Error: click_link 'Edit this file'
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching visible link "Edit this file"
# ./resources/spec/features/refinery/admin/resources_spec.rb:125:in `block (4 levels) in <module:Admin>'
Finished in 1 minute 17.88 seconds (files took 3.99 seconds to load)
564 examples, 14 failures, 8 pending
Failed examples:
rspec ./images/spec/features/refinery/admin/images_spec.rb[1:3:6:1:1] # the Admin Images Tab When there are many images has behaviour: uploads images when the image type is acceptable the image is uploaded
rspec ./images/spec/features/refinery/admin/images_spec.rb[1:1:2:1:1] # the Admin Images Tab When there are no images has behaviour: uploads images when the image type is acceptable the image is uploaded
rspec ./images/spec/features/refinery/admin/images_spec.rb[1:2:6:1:1] # the Admin Images Tab When there is one image has behaviour: uploads images when the image type is acceptable the image is uploaded
rspec ./pages/spec/features/refinery/pages_spec.rb:401 # with multiple locales redirects should redirect to default locale slug
rspec ./images/spec/features/refinery/admin/images_spec.rb[2:1:1:1:1] # Page Visual Editor - Add Image When there are no images has behaviour: uploads images when the image type is acceptable the image is uploaded
rspec ./images/spec/features/refinery/admin/images_spec.rb[2:2:3:1:1] # Page Visual Editor - Add Image When there is one image has behaviour: uploads images when the image type is acceptable the image is uploaded
rspec ./images/spec/features/refinery/admin/images_spec.rb[2:3:3:1:1] # Page Visual Editor - Add Image When there are many images has behaviour: uploads images when the image type is acceptable the image is uploaded
rspec ./core/spec/features/refinery/admin/xhr_paging_spec.rb:18 # Crudify xhr_paging performs ajax paging of index
rspec ./resources/spec/features/refinery/admin/resources_spec.rb:41 # Resources new/create when the file mime_type is acceptable the file is uploaded
rspec ./resources/spec/features/refinery/admin/resources_spec.rb:157 # Resources download succeeds
rspec ./resources/spec/features/refinery/admin/resources_spec.rb:179 # Resources download when the extension is mounted with a named space succeeds
rspec ./resources/spec/features/refinery/admin/resources_spec.rb:11 # Resources when no files invites to upload file
rspec ./resources/spec/features/refinery/admin/resources_spec.rb:98 # Resources edit/update updates file
rspec ./resources/spec/features/refinery/admin/resources_spec.rb:120 # Resources edit/update translate can have a second locale added to it
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment