releaf 1.1.18 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 36d2476f66345f51dcf00f93eb1acbe59251eb0924e718a0d2dae1d253087031
4
- data.tar.gz: 5d343549a2fe92bbf38d0623e5547bf791ba389b284709370cd146fccb399506
3
+ metadata.gz: 87ab5cfa968ef545aae114044257a256c83b96dc43a7f50b2fd9cb2247ecb0f5
4
+ data.tar.gz: e5408fdff91d7230f454f535f85a08838e6773863720e948290eee56f0346c51
5
5
  SHA512:
6
- metadata.gz: 12c43d5a9706ff86e8728032169047dfcbc995909c8d6e864ede14249f7361acf349a71b40b357e46f45de03234533fb35b15160c93c04982651a46077cfd6cb
7
- data.tar.gz: ce45168b8e16b96057e6e99e2186b3f5d6582e59e17fd9fe032e2f0efe97e02fd181191e55584df3ef609c625a1b0c504617f0dc2ad91a45e104b682032d34e5
6
+ metadata.gz: aaea200aef8a8e7d95d553d48a9bba5158880c1688e36ced4bc86b6a0c86e1e05ebca31aea88ff73765252944055c9a766bec47de8902a01d858d87193148868
7
+ data.tar.gz: c64fd2c93e37e58edabb0c77c2b6e0e58489d68df2b4d468923ae4fbe88d9cbf367107977057b12ce7ee38a681fee844fcbeb8e8af5c0a970dc166cee7fd179f
@@ -37,22 +37,31 @@ module Capybara
37
37
  # e.g., the label text or the id of the textarea
38
38
  # @return [true] whether errors has been found otherwise will raise Capybara::ElementNotFound exception
39
39
  def has_error?(error_message, options = {})
40
- error_exists = false
40
+ error_found = false
41
41
  if options[:field]
42
42
  first('.field.has-error', minimum: 1) # wait for any errors to come from validation
43
- all(".field.has-error").each do
44
- if find(:field, options[:field]) && first(".error", text: error_message)
45
- error_exists = true
46
- break
43
+ all(".field.has-error").each do |field_container|
44
+ if !error_found
45
+ within(field_container) do
46
+ if has_field?(options[:field], wait: false) && has_css?(".error", text: error_message, wait: false)
47
+ error_found = true
48
+ end
49
+ end
47
50
  end
48
51
  end
49
52
  else
50
53
  if first(".form-error-box .error", text: error_message)
51
- error_exists = true
54
+ error_found = true
52
55
  end
53
56
  end
54
57
 
55
- raise Capybara::ElementNotFound.new("Unable to find given error message") unless error_exists
58
+ unless error_found
59
+ failure_text = "Unable to find error message #{error_message.inspect}"
60
+ if options[:field]
61
+ failure_text += " on field #{options[:field].inspect}"
62
+ end
63
+ raise Capybara::ElementNotFound.new failure_text
64
+ end
56
65
 
57
66
  true
58
67
  end
@@ -54,7 +54,7 @@ module Releaf::Test
54
54
  end
55
55
 
56
56
  def create_resource
57
- click_link "Create new resource" unless first("form.new-resource")
57
+ click_link "Create new resource" unless first("form.new-resource", minimum: 0)
58
58
  within "form.new-resource" do
59
59
  yield
60
60
  end
@@ -89,8 +89,8 @@ module Releaf::Test
89
89
  def wait_for_all_richtexts
90
90
  # wait for all ckeditors to fully initialize before moving on.
91
91
  # otherwise the page sometimes produces random js errors in fast tests
92
- number_of_normal_richtexts = page.all('.field.type-richtext:not(.i18n)').length
93
- number_of_localized_richtexts = page.all('.field.type-richtext.i18n .localization', visible: false).length
92
+ number_of_normal_richtexts = page.all('.field.type-richtext:not(.i18n)', wait: 0).length
93
+ number_of_localized_richtexts = page.all('.field.type-richtext.i18n .localization', wait: 0, visible: false).length
94
94
  number_of_richtexts = number_of_normal_richtexts + number_of_localized_richtexts
95
95
  if (number_of_richtexts > 0)
96
96
  expect(page).to have_css(".ckeditor-initialized", visible: false, count: number_of_richtexts)
@@ -208,7 +208,7 @@ module Releaf::Test
208
208
  textareas = []
209
209
  richtext_boxes = all(".field.type-richtext:not(.i18n), .field.type-richtext.i18n .localization.active")
210
210
  richtext_boxes.each do |richtext_box|
211
- textarea = richtext_box.first(:field, locator, visible: false)
211
+ textarea = richtext_box.first(:field, locator, visible: false, minimum: 0)
212
212
  textareas << textarea if textarea.present?
213
213
  end
214
214
 
@@ -254,5 +254,13 @@ module Releaf::Test
254
254
  expect(page).to have_css(".item[data-name=\"#{block_name}\"][data-index=\"#{item_index}\"][style=\"opacity: 1; display: block;\"]")
255
255
  end
256
256
 
257
+ def download_file(url)
258
+ require "open-uri"
259
+ file = Tempfile.new
260
+ file.binmode
261
+ file.write(open(url).read)
262
+ file.flush
263
+ file
264
+ end
257
265
  end
258
266
  end
@@ -1,3 +1,3 @@
1
1
  module Releaf
2
- VERSION = "1.1.18"
2
+ VERSION = "2.0.0"
3
3
  end
@@ -1,6 +1,6 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :author do
3
- name "Aleksandrs"
4
- surname "Lielais"
3
+ name { "Aleksandrs" }
4
+ surname { "Lielais" }
5
5
  end
6
6
  end
@@ -1,4 +1,4 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :banner_page do
3
3
 
4
4
  end
@@ -1,5 +1,5 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :book do
3
- title "some book"
3
+ title { "some book" }
4
4
  end
5
5
  end
@@ -1,7 +1,7 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :chapter do
3
3
  sequence(:title) { |n| "Chapter #{n}" }
4
- text 'Some awesome text for great test'
5
- sample_html '<strong>heavy</strong> words'
4
+ text { 'Some awesome text for great test' }
5
+ sample_html { '<strong>heavy</strong> words' }
6
6
  end
7
7
  end
@@ -1,4 +1,4 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  sequence(:name) {|n| "name-#{n}" }
3
3
  sequence(:surname) {|n| "surname-#{n}" }
4
4
  sequence(:email) {|n| "email-#{n}@example.com" }
@@ -1,5 +1,5 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :home_page do
3
- text_html "xx duper"
3
+ text_html { "xx duper" }
4
4
  end
5
5
  end
@@ -1,49 +1,49 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :node, class: ::Node do
3
3
  sequence(:name) {|n| "node #{n}"}
4
4
  sequence(:slug) {|n| "node-#{n}"}
5
- content_type "HomePage"
5
+ content_type { "HomePage" }
6
6
  end
7
7
 
8
8
  factory :other_node, class: ::OtherSite::OtherNode do
9
9
  sequence(:name) {|n| "node #{n}"}
10
10
  sequence(:slug) {|n| "node-#{n}"}
11
- content_type "HomePage"
11
+ content_type { "HomePage" }
12
12
  end
13
13
 
14
14
  factory :home_page_node, class: ::Node do
15
15
  sequence(:name) {|n| "node #{n}"}
16
16
  sequence(:slug) {|n| "node-#{n}"}
17
- content_type "HomePage"
18
- content_attributes ({ intro_text_html: "some <strong>STRRRONG</strong> text" })
17
+ content_type { "HomePage" }
18
+ content_attributes {{ intro_text_html: "some <strong>STRRRONG</strong> text" }}
19
19
  end
20
20
 
21
21
  factory :other_home_page_node, class: ::OtherSite::OtherNode do
22
22
  sequence(:name) {|n| "node #{n}"}
23
23
  sequence(:slug) {|n| "node-#{n}"}
24
- content_type "HomePage"
25
- content_attributes ({ intro_text_html: "some <strong>STRRRONG</strong> text" })
24
+ content_type { "HomePage" }
25
+ content_attributes {{ intro_text_html: "some <strong>STRRRONG</strong> text" }}
26
26
  end
27
27
 
28
28
  factory :text_page_node, class: ::Node do
29
29
  sequence(:name) {|n| "node #{n}"}
30
30
  sequence(:slug) {|n| "node-#{n}"}
31
- content_type "TextPage"
32
- content_attributes ({ text_html: "some <strong>STRIONG</strong> text" })
31
+ content_type { "TextPage" }
32
+ content_attributes {{ text_html: "some <strong>STRIONG</strong> text" }}
33
33
  end
34
34
 
35
35
  factory :other_text_page_node, class: ::OtherSite::OtherNode do
36
36
  sequence(:name) {|n| "node #{n}"}
37
37
  sequence(:slug) {|n| "node-#{n}"}
38
- content_type "TextPage"
39
- content_attributes ({ text_html: "some <strong>STRIONG</strong> text" })
38
+ content_type { "TextPage" }
39
+ content_attributes {{ text_html: "some <strong>STRIONG</strong> text" }}
40
40
  end
41
41
 
42
42
  factory :banner_page_node, class: ::Node do
43
43
  sequence(:name) {|n| "node #{n}"}
44
44
  sequence(:slug) {|n| "node-#{n}"}
45
- content_type "BannerPage"
46
- content_attributes ({})
45
+ content_type { "BannerPage" }
46
+ content_attributes {{}}
47
47
  end
48
48
 
49
49
 
@@ -1,7 +1,7 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :node_route, class: ::Releaf::Content::Route do
3
3
  sequence(:node_id) {|n| n}
4
4
  sequence(:path) {|n| "path-#{n}"}
5
- locale "en"
5
+ locale { "en" }
6
6
  end
7
7
  end
@@ -1,5 +1,5 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :publisher do
3
- title "Good publisher"
3
+ title { "Good publisher" }
4
4
  end
5
5
  end
@@ -1,9 +1,9 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :roles, :class => Releaf::Permissions::Role do
3
3
  sequence(:name) {|n| "role #{n}"}
4
4
 
5
5
  factory :admin_role do
6
- default_controller "releaf/permissions/users"
6
+ default_controller { "releaf/permissions/users" }
7
7
  after(:create) do |role|
8
8
  Releaf.application.config.available_controllers.each do|controller|
9
9
  role.permissions.create!(permission: "controller.#{controller}")
@@ -12,7 +12,7 @@ FactoryGirl.define do
12
12
  end
13
13
 
14
14
  factory :content_role do
15
- default_controller "admin/nodes"
15
+ default_controller { "admin/nodes" }
16
16
  after(:create) do |role|
17
17
  role.permissions.create!(permission: "controller.admin/nodes")
18
18
  end
@@ -1,5 +1,5 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :text_page do
3
- text_html "super duper"
3
+ text_html { "super duper" }
4
4
  end
5
5
  end
@@ -1,12 +1,12 @@
1
- FactoryGirl.define do
1
+ FactoryBot.define do
2
2
  factory :users, class: Releaf::Permissions::User do
3
3
  trait :user_basic do
4
4
  email
5
5
  name
6
6
  surname
7
- locale 'en'
8
- password 'password'
9
- password_confirmation 'password'
7
+ locale { 'en' }
8
+ password { 'password' }
9
+ password_confirmation { 'password' }
10
10
  end
11
11
 
12
12
  factory :user do
@@ -2,7 +2,6 @@ require 'simplecov'
2
2
  require 'simplecov-rcov'
3
3
  require 'coveralls'
4
4
  require 'pry'
5
- require 'pry-nav'
6
5
  SimpleCov.command_name 'rspec'
7
6
 
8
7
  Coveralls.wear!('rails')
@@ -23,16 +22,16 @@ ENV["RAILS_ENV"] ||= 'test'
23
22
  require 'spec_helper'
24
23
  require File.expand_path("../dummy/config/environment.rb", __FILE__)
25
24
  require 'rspec/rails'
26
- require 'factory_girl'
25
+ require 'rails-controller-testing'
26
+ require 'factory_bot'
27
27
  require "shoulda-matchers"
28
28
  require 'db-query-matchers'
29
- require 'capybara/poltergeist'
29
+ require 'selenium/webdriver'
30
30
  require 'with_model'
31
31
  require 'timecop'
32
32
  require 'with_model'
33
33
  require 'database_cleaner'
34
34
  require 'releaf/rspec'
35
- require 'sass' # To stop these warnings: WARN: tilt autoloading 'sass' in a non thread-safe way; explicit require 'sass' suggested.
36
35
 
37
36
  Rails.backtrace_cleaner.remove_silencers!
38
37
  # Load support files
@@ -41,23 +40,22 @@ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
41
40
  # for devise testing
42
41
  include Warden::Test::Helpers
43
42
 
43
+ Capybara.register_driver(:chrome) do |app|
44
+ options = ::Selenium::WebDriver::Chrome::Options.new
45
+ options.add_argument('--headless')
46
+ options.add_argument('--window-size=1400,900')
44
47
 
45
- Capybara.register_driver :poltergeist do |app|
46
- Capybara::Poltergeist::Driver.new(app, js_errors: true, inspector: true, phantomjs_logger: WarningSuppressor)
48
+ if ENV['CI']
49
+ options.add_argument('--no-sandbox')
50
+ options.add_argument('--disable-dev-shm-usage')
51
+ end
52
+
53
+ Capybara::Selenium::Driver.new(app, browser: :chrome, options: options)
47
54
  end
48
55
 
49
- class WarningSuppressor
50
- IGNOREABLE = /CoreText performance|userSpaceScaleFactor/
56
+ Capybara.javascript_driver = :chrome
51
57
 
52
- def write(message)
53
- if message =~ IGNOREABLE
54
- 0
55
- else
56
- puts(message)
57
- 1
58
- end
59
- end
60
- end
58
+ Capybara.default_set_options = { clear: :backspace } # needed for 'fill_in "Foo", with: ""' to work
61
59
 
62
60
  RSpec.configure do |config|
63
61
  config.use_transactional_fixtures = false
@@ -65,6 +63,10 @@ RSpec.configure do |config|
65
63
  config.order = "random"
66
64
  config.infer_spec_type_from_file_location!
67
65
 
66
+ config.include Shoulda::Matchers::ActiveModel, type: :model
67
+ config.include Shoulda::Matchers::ActiveRecord, type: :model
68
+ config.include Shoulda::Matchers::Independent
69
+
68
70
  config.color = true
69
71
 
70
72
  if ENV['COVERAGE']
@@ -72,6 +74,7 @@ RSpec.configure do |config|
72
74
  end
73
75
 
74
76
  config.include Releaf::Test::Helpers
77
+ config.include CapybaraActions, type: :feature
75
78
  config.include WaitSteps
76
79
  config.include ExcelHelpers
77
80
  config.extend WithModel
@@ -85,11 +88,16 @@ RSpec.configure do |config|
85
88
  config.extend ControllerMacros, type: :helper
86
89
 
87
90
 
88
- # FactoryGirl
89
- config.include FactoryGirl::Syntax::Methods
91
+ [:controller, :view, :request].each do |type|
92
+ config.include ::Rails::Controller::Testing::TestProcess, type: type
93
+ config.include ::Rails::Controller::Testing::TemplateAssertions, type: type
94
+ config.include ::Rails::Controller::Testing::Integration, type: type
95
+ end
96
+
97
+
98
+ config.include FactoryBot::Syntax::Methods
90
99
 
91
- Capybara.javascript_driver = :poltergeist
92
- Capybara.server = :webrick
100
+ Capybara.default_normalize_ws = true
93
101
 
94
102
  # disable empty translation creation
95
103
 
@@ -0,0 +1,6 @@
1
+ module CapybaraActions
2
+ def blur_from(locator)
3
+ field = find_field(locator)
4
+ field.native.send_keys :tab
5
+ end
6
+ end
@@ -2,7 +2,7 @@ module ControllerMacros
2
2
  def login_as_user factory
3
3
  before(:each) do
4
4
  @request.env["devise.mapping"] = Devise.mappings[:admin]
5
- sign_in FactoryGirl.create(factory) # Using factory girl as an example
5
+ sign_in FactoryBot.create(factory) # Using factory girl as an example
6
6
  end
7
7
  end
8
8
  end
@@ -45,9 +45,9 @@ module ExcelHelpers
45
45
  for column in columns
46
46
  fixture_value = fixture.cell(row, column)
47
47
  actual_value = actual.cell(row, column)
48
- if fixture_value != actual_value
48
+ if fixture_value.to_s != actual_value.to_s
49
49
  @errors << {
50
- cell: "#{Roo::Base.number_to_letter(column)}#{row}",
50
+ cell: "#{Roo::Utils.number_to_letter(column)}#{row}",
51
51
  fixture_value: fixture_value,
52
52
  actual_value: actual_value
53
53
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: releaf
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.18
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - CubeSystems
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-08-08 00:00:00.000000000 Z
11
+ date: 2020-10-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: releaf-core
@@ -16,58 +16,72 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 1.1.18
19
+ version: 2.0.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: 1.1.18
26
+ version: 2.0.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: releaf-i18n_database
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 1.1.18
33
+ version: 2.0.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 1.1.18
40
+ version: 2.0.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: releaf-permissions
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: 1.1.18
47
+ version: 2.0.0
48
48
  type: :runtime
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: 1.1.18
54
+ version: 2.0.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: releaf-content
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 1.1.18
61
+ version: 2.0.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: 1.1.18
68
+ version: 2.0.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec-rails
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '4.0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '4.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rails-controller-testing
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
87
  - - ">="
@@ -80,48 +94,62 @@ dependencies:
80
94
  - - ">="
81
95
  - !ruby/object:Gem::Version
82
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: listen
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 3.2.1
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 3.2.1
83
111
  - !ruby/object:Gem::Dependency
84
112
  name: capybara
85
113
  requirement: !ruby/object:Gem::Requirement
86
114
  requirements:
87
- - - ">="
115
+ - - "~>"
88
116
  - !ruby/object:Gem::Version
89
- version: '0'
117
+ version: '3.32'
90
118
  type: :development
91
119
  prerelease: false
92
120
  version_requirements: !ruby/object:Gem::Requirement
93
121
  requirements:
94
- - - ">="
122
+ - - "~>"
95
123
  - !ruby/object:Gem::Version
96
- version: '0'
124
+ version: '3.32'
97
125
  - !ruby/object:Gem::Dependency
98
- name: poltergeist
126
+ name: selenium-webdriver
99
127
  requirement: !ruby/object:Gem::Requirement
100
128
  requirements:
101
- - - ">="
129
+ - - "~>"
102
130
  - !ruby/object:Gem::Version
103
- version: '0'
131
+ version: '3.142'
104
132
  type: :development
105
133
  prerelease: false
106
134
  version_requirements: !ruby/object:Gem::Requirement
107
135
  requirements:
108
- - - ">="
136
+ - - "~>"
109
137
  - !ruby/object:Gem::Version
110
- version: '0'
138
+ version: '3.142'
111
139
  - !ruby/object:Gem::Dependency
112
- name: factory_girl_rails
140
+ name: factory_bot
113
141
  requirement: !ruby/object:Gem::Requirement
114
142
  requirements:
115
- - - '='
143
+ - - "~>"
116
144
  - !ruby/object:Gem::Version
117
- version: 4.8.0
145
+ version: '5.2'
118
146
  type: :development
119
147
  prerelease: false
120
148
  version_requirements: !ruby/object:Gem::Requirement
121
149
  requirements:
122
- - - '='
150
+ - - "~>"
123
151
  - !ruby/object:Gem::Version
124
- version: 4.8.0
152
+ version: '5.2'
125
153
  - !ruby/object:Gem::Dependency
126
154
  name: syntax
127
155
  requirement: !ruby/object:Gem::Requirement
@@ -140,16 +168,16 @@ dependencies:
140
168
  name: simplecov
141
169
  requirement: !ruby/object:Gem::Requirement
142
170
  requirements:
143
- - - ">="
171
+ - - "~>"
144
172
  - !ruby/object:Gem::Version
145
- version: '0'
173
+ version: 0.16.1
146
174
  type: :development
147
175
  prerelease: false
148
176
  version_requirements: !ruby/object:Gem::Requirement
149
177
  requirements:
150
- - - ">="
178
+ - - "~>"
151
179
  - !ruby/object:Gem::Version
152
- version: '0'
180
+ version: 0.16.1
153
181
  - !ruby/object:Gem::Dependency
154
182
  name: simplecov-rcov
155
183
  requirement: !ruby/object:Gem::Requirement
@@ -168,30 +196,30 @@ dependencies:
168
196
  name: database_cleaner
169
197
  requirement: !ruby/object:Gem::Requirement
170
198
  requirements:
171
- - - ">="
199
+ - - "~>"
172
200
  - !ruby/object:Gem::Version
173
- version: '0'
201
+ version: '1.8'
174
202
  type: :development
175
203
  prerelease: false
176
204
  version_requirements: !ruby/object:Gem::Requirement
177
205
  requirements:
178
- - - ">="
206
+ - - "~>"
179
207
  - !ruby/object:Gem::Version
180
- version: '0'
208
+ version: '1.8'
181
209
  - !ruby/object:Gem::Dependency
182
210
  name: shoulda-matchers
183
211
  requirement: !ruby/object:Gem::Requirement
184
212
  requirements:
185
213
  - - "~>"
186
214
  - !ruby/object:Gem::Version
187
- version: '2.8'
215
+ version: '4.3'
188
216
  type: :development
189
217
  prerelease: false
190
218
  version_requirements: !ruby/object:Gem::Requirement
191
219
  requirements:
192
220
  - - "~>"
193
221
  - !ruby/object:Gem::Version
194
- version: '2.8'
222
+ version: '4.3'
195
223
  - !ruby/object:Gem::Dependency
196
224
  name: db-query-matchers
197
225
  requirement: !ruby/object:Gem::Requirement
@@ -210,16 +238,16 @@ dependencies:
210
238
  name: coveralls
211
239
  requirement: !ruby/object:Gem::Requirement
212
240
  requirements:
213
- - - ">="
241
+ - - "~>"
214
242
  - !ruby/object:Gem::Version
215
- version: '0'
243
+ version: '0.8'
216
244
  type: :development
217
245
  prerelease: false
218
246
  version_requirements: !ruby/object:Gem::Requirement
219
247
  requirements:
220
- - - ">="
248
+ - - "~>"
221
249
  - !ruby/object:Gem::Version
222
- version: '0'
250
+ version: '0.8'
223
251
  - !ruby/object:Gem::Dependency
224
252
  name: timecop
225
253
  requirement: !ruby/object:Gem::Requirement
@@ -238,16 +266,16 @@ dependencies:
238
266
  name: with_model
239
267
  requirement: !ruby/object:Gem::Requirement
240
268
  requirements:
241
- - - ">="
269
+ - - "~>"
242
270
  - !ruby/object:Gem::Version
243
- version: '0'
271
+ version: '2.1'
244
272
  type: :development
245
273
  prerelease: false
246
274
  version_requirements: !ruby/object:Gem::Requirement
247
275
  requirements:
248
- - - ">="
276
+ - - "~>"
249
277
  - !ruby/object:Gem::Version
250
- version: '0'
278
+ version: '2.1'
251
279
  - !ruby/object:Gem::Dependency
252
280
  name: pry
253
281
  requirement: !ruby/object:Gem::Requirement
@@ -263,7 +291,7 @@ dependencies:
263
291
  - !ruby/object:Gem::Version
264
292
  version: '0'
265
293
  - !ruby/object:Gem::Dependency
266
- name: pry-nav
294
+ name: roo
267
295
  requirement: !ruby/object:Gem::Requirement
268
296
  requirements:
269
297
  - - ">="
@@ -277,19 +305,19 @@ dependencies:
277
305
  - !ruby/object:Gem::Version
278
306
  version: '0'
279
307
  - !ruby/object:Gem::Dependency
280
- name: roo
308
+ name: puma
281
309
  requirement: !ruby/object:Gem::Requirement
282
310
  requirements:
283
- - - ">="
311
+ - - "~>"
284
312
  - !ruby/object:Gem::Version
285
- version: '0'
313
+ version: '4.3'
286
314
  type: :development
287
315
  prerelease: false
288
316
  version_requirements: !ruby/object:Gem::Requirement
289
317
  requirements:
290
- - - ">="
318
+ - - "~>"
291
319
  - !ruby/object:Gem::Version
292
- version: '0'
320
+ version: '4.3'
293
321
  description: Administration interface for Ruby on Rails
294
322
  email: info@cubesystems.lv
295
323
  executables: []
@@ -321,6 +349,7 @@ files:
321
349
  - spec/factories/user.rb
322
350
  - spec/rails_helper.rb
323
351
  - spec/spec_helper.rb
352
+ - spec/support/capybra_actions.rb
324
353
  - spec/support/controller_macros.rb
325
354
  - spec/support/excel_helpers.rb
326
355
  - spec/support/shared/service_includer.rb
@@ -329,7 +358,7 @@ homepage: https://github.com/cubesystems/releaf
329
358
  licenses:
330
359
  - MIT
331
360
  metadata: {}
332
- post_install_message:
361
+ post_install_message:
333
362
  rdoc_options: []
334
363
  require_paths:
335
364
  - lib
@@ -337,16 +366,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
337
366
  requirements:
338
367
  - - ">="
339
368
  - !ruby/object:Gem::Version
340
- version: 2.2.0
369
+ version: 2.5.0
341
370
  required_rubygems_version: !ruby/object:Gem::Requirement
342
371
  requirements:
343
372
  - - ">="
344
373
  - !ruby/object:Gem::Version
345
374
  version: '0'
346
375
  requirements: []
347
- rubyforge_project:
348
- rubygems_version: 2.7.7
349
- signing_key:
376
+ rubygems_version: 3.0.8
377
+ signing_key:
350
378
  specification_version: 4
351
379
  summary: Administration interface for Ruby on Rails
352
380
  test_files:
@@ -365,6 +393,7 @@ test_files:
365
393
  - spec/support/wait_steps.rb
366
394
  - spec/support/controller_macros.rb
367
395
  - spec/support/excel_helpers.rb
396
+ - spec/support/capybra_actions.rb
368
397
  - spec/support/shared/service_includer.rb
369
398
  - spec/spec_helper.rb
370
399
  - spec/rails_helper.rb