rspeckled 0.0.54 → 0.0.55
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/lib/rspeckled/helpers/responses.rb +1 -3
- data/lib/rspeckled/plugins/authentication.rb +5 -5
- data/lib/rspeckled/plugins/awesome_print.rb +67 -75
- data/lib/rspeckled/plugins/bullet.rb +11 -20
- data/lib/rspeckled/plugins/capybara.rb +109 -120
- data/lib/rspeckled/plugins/carrier_wave.rb +18 -26
- data/lib/rspeckled/plugins/database_cleaner.rb +23 -37
- data/lib/rspeckled/plugins/devise.rb +9 -18
- data/lib/rspeckled/plugins/dox.rb +35 -43
- data/lib/rspeckled/plugins/elasticsearch.rb +17 -24
- data/lib/rspeckled/plugins/email.rb +4 -13
- data/lib/rspeckled/plugins/factory_bot.rb +13 -22
- data/lib/rspeckled/plugins/fakeredis.rb +1 -4
- data/lib/rspeckled/plugins/faraday.rb +49 -55
- data/lib/rspeckled/plugins/foreign_keys.rb +0 -4
- data/lib/rspeckled/plugins/garbage_collection.rb +31 -32
- data/lib/rspeckled/plugins/mongoid.rb +3 -10
- data/lib/rspeckled/plugins/omniauth.rb +30 -38
- data/lib/rspeckled/plugins/rails/strong_parameters.rb +8 -10
- data/lib/rspeckled/plugins/recaptcha.rb +2 -11
- data/lib/rspeckled/plugins/referehencible.rb +10 -19
- data/lib/rspeckled/plugins/request.rb +0 -4
- data/lib/rspeckled/plugins/shoulda.rb +20 -29
- data/lib/rspeckled/plugins/sidekiq.rb +21 -24
- data/lib/rspeckled/plugins/singleton.rb +0 -4
- data/lib/rspeckled/plugins/stripe.rb +17 -26
- data/lib/rspeckled/plugins/test_after_commit.rb +1 -6
- data/lib/rspeckled/plugins/timecop.rb +21 -28
- data/lib/rspeckled/plugins/vcr.rb +23 -37
- data/lib/rspeckled/plugins/webmock.rb +11 -18
- data/lib/rspeckled/plugins/wisper.rb +4 -12
- data/lib/rspeckled/plugins.rb +77 -31
- data/lib/rspeckled/spec_helpers/rspeckled.rb +0 -1
- data/lib/rspeckled/support.rb +13 -5
- data/lib/rspeckled/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +26 -24
- metadata.gz.sig +0 -0
- data/lib/rspeckled/plugins/code_climate.rb +0 -10
- data/lib/rspeckled/plugins/pretty_print.rb +0 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5a78f20ed3fca9b9c5e466fd191083a8c45b546b0d3289f4256bcf3cbe095d3b
|
4
|
+
data.tar.gz: c773560ea881311ceb87697dc9502dde2ac36d1c1c2215092b26a5ceddc61739
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0effdfdc52e9f76b2824fa76ca41aae39c45dcc6c7bb0ab3c9db7d98ea52418a3f2613be9b33ae930ca2b7883fa062891168d0f82d4ed75dfd49a88d4c86a4c3
|
7
|
+
data.tar.gz: 751ba0cd3837e2ced58e55321fe5e1245349de4fde51624c6f058a69fb7a269d848639f404077c2d3b379a3df95825b3bf6ab9cf66bb38190af0607aea79136f
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
@@ -2,13 +2,13 @@
|
|
2
2
|
|
3
3
|
# rubocop:disable Layout/IndentHash
|
4
4
|
RSpec.configure do |config|
|
5
|
-
config.around(:each, :
|
6
|
-
options = if example.metadata[:
|
7
|
-
example.metadata[:
|
5
|
+
config.around(:each, :auth => lambda { |v| !!v }) do |example|
|
6
|
+
options = if example.metadata[:auth].is_a?(Hash)
|
7
|
+
example.metadata[:auth]
|
8
8
|
else
|
9
9
|
{
|
10
10
|
:token => {
|
11
|
-
:roles => example.metadata[:
|
11
|
+
:roles => example.metadata[:auth],
|
12
12
|
},
|
13
13
|
}
|
14
14
|
end
|
@@ -93,7 +93,7 @@ RSpec.configure do |config|
|
|
93
93
|
instance.delete unless options[:strategy] == :instance
|
94
94
|
end
|
95
95
|
|
96
|
-
config.before(:each, :
|
96
|
+
config.before(:each, :auth => lambda { |v| !!v }) do |_example|
|
97
97
|
request.env['X_JSON_WEB_TOKEN'] = @token_data
|
98
98
|
end
|
99
99
|
end
|
@@ -1,101 +1,93 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
##############################################################################
|
4
|
-
# Awesome Print Plugin
|
5
|
-
##############################################################################
|
6
|
-
|
7
3
|
# rubocop:disable Metrics/AbcSize
|
8
4
|
# rubocop:disable Metrics/PerceivedComplexity
|
9
5
|
# rubocop:disable Metrics/CyclomaticComplexity
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
root_path = if defined?(Rails)
|
28
|
-
Rails.root.to_s
|
29
|
-
else
|
30
|
-
`git rev-parse --show-toplevel`
|
31
|
-
end
|
32
|
-
|
33
|
-
caller[0...5].each do |line|
|
34
|
-
relative_line = line.gsub!(root_path.strip, '.')
|
35
|
-
|
36
|
-
color = if relative_line == line
|
37
|
-
'34'
|
6
|
+
require 'io/console'
|
7
|
+
|
8
|
+
module Kernel
|
9
|
+
def sap(*messages)
|
10
|
+
columns = if IO.console
|
11
|
+
IO.console.winsize[1]
|
12
|
+
else
|
13
|
+
80
|
14
|
+
end
|
15
|
+
|
16
|
+
puts
|
17
|
+
print "\e[1;35m"
|
18
|
+
print " #{Time.now} ".center(columns, '*')
|
19
|
+
print "\e[0m\n"
|
20
|
+
puts
|
21
|
+
root_path = if defined?(Rails)
|
22
|
+
Rails.root.to_s
|
38
23
|
else
|
39
|
-
|
24
|
+
`git rev-parse --show-toplevel`
|
40
25
|
end
|
41
26
|
|
42
|
-
|
43
|
-
|
44
|
-
print "\e[0m\n"
|
45
|
-
end
|
27
|
+
caller[0...5].each do |line|
|
28
|
+
relative_line = line.gsub!(root_path.strip, '.')
|
46
29
|
|
47
|
-
|
30
|
+
color = if relative_line == line
|
31
|
+
'34'
|
32
|
+
else
|
33
|
+
'38;5;239'
|
34
|
+
end
|
48
35
|
|
49
|
-
|
50
|
-
|
51
|
-
|
36
|
+
print "\e[#{color}m"
|
37
|
+
print line
|
38
|
+
print "\e[0m\n"
|
39
|
+
end
|
52
40
|
|
53
|
-
|
54
|
-
ap message.class
|
55
|
-
else
|
56
|
-
puts "Class: #{message.class}"
|
57
|
-
print "Class Name: #{message.class.name}"
|
58
|
-
end
|
41
|
+
puts
|
59
42
|
|
60
|
-
|
61
|
-
|
62
|
-
|
43
|
+
Array(messages).each.with_index do |message, index|
|
44
|
+
if message.respond_to?(:class)
|
45
|
+
print "\e[32m"
|
63
46
|
|
64
|
-
if defined?(::ActiveRecord::Base) && message.
|
65
|
-
ap(message.
|
47
|
+
if defined?(::ActiveRecord::Base) && message.class.ancestors.include?(::ActiveRecord::Base)
|
48
|
+
ap(message.class)
|
66
49
|
else
|
67
|
-
|
50
|
+
puts "Class: #{message.class}"
|
51
|
+
print "Class Name: #{message.class.name}"
|
68
52
|
end
|
69
53
|
|
54
|
+
print "\e[0m\n"
|
70
55
|
puts
|
56
|
+
end
|
71
57
|
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
print "\e[1;30m"
|
78
|
-
print message.to_str
|
79
|
-
print "\e[0m\n"
|
80
|
-
puts
|
81
|
-
elsif message.respond_to?(:read)
|
82
|
-
print "\e[1;35m"
|
83
|
-
print ' RAW STRING '.center(columns, '-')
|
84
|
-
print "\e[0m\n"
|
85
|
-
puts
|
86
|
-
print "\e[1;30m"
|
87
|
-
print message.read
|
88
|
-
print "\e[0m\n"
|
89
|
-
puts
|
58
|
+
if defined?(::ActiveRecord::Base) && message.is_a?(::ActiveRecord::Base)
|
59
|
+
ap(message.attributes, :raw => true)
|
60
|
+
else
|
61
|
+
ap(message, :raw => true)
|
62
|
+
end
|
90
63
|
|
91
|
-
|
92
|
-
end
|
64
|
+
puts
|
93
65
|
|
94
|
-
|
66
|
+
if %w{String ActionView::OutputBuffer ActiveSupport::SafeBuffer}.include?(message.class.name)
|
67
|
+
print "\e[1;35m"
|
68
|
+
print ' RAW STRING '.center(columns, '-')
|
69
|
+
print "\e[0m\n"
|
70
|
+
puts
|
71
|
+
print "\e[1;30m"
|
72
|
+
print message.to_str
|
73
|
+
print "\e[0m\n"
|
74
|
+
puts
|
75
|
+
elsif message.respond_to?(:read)
|
76
|
+
print "\e[1;35m"
|
77
|
+
print ' RAW STRING '.center(columns, '-')
|
78
|
+
print "\e[0m\n"
|
79
|
+
puts
|
80
|
+
print "\e[1;30m"
|
81
|
+
print message.read
|
82
|
+
print "\e[0m\n"
|
83
|
+
puts
|
84
|
+
|
85
|
+
message.rewind
|
95
86
|
end
|
87
|
+
|
88
|
+
puts unless index + 1 == Array(messages).length
|
96
89
|
end
|
97
90
|
end
|
98
|
-
rescue LoadError
|
99
91
|
end
|
100
92
|
# rubocop:enable Metrics/CyclomaticComplexity
|
101
93
|
# rubocop:enable Metrics/PerceivedComplexity
|
@@ -1,27 +1,18 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
3
|
+
Bullet.enable = true
|
4
|
+
Bullet.bullet_logger = true
|
5
|
+
Bullet.raise = true
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
Bullet.bullet_logger = true
|
12
|
-
Bullet.raise = true
|
13
|
-
|
14
|
-
RSpec.configure do |config|
|
15
|
-
config.before(:each) do
|
16
|
-
Bullet.start_request if Bullet.enable?
|
17
|
-
end
|
7
|
+
RSpec.configure do |config|
|
8
|
+
config.before(:each) do
|
9
|
+
Bullet.start_request if Bullet.enable?
|
10
|
+
end
|
18
11
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
end
|
12
|
+
config.after(:each) do
|
13
|
+
if Bullet.enable?
|
14
|
+
Bullet.perform_out_of_channel_notifications if Bullet.notification?
|
15
|
+
Bullet.end_request
|
24
16
|
end
|
25
17
|
end
|
26
|
-
rescue LoadError
|
27
18
|
end
|
@@ -1,9 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
##############################################################################
|
4
|
-
# Capybara Plugin
|
5
|
-
##############################################################################
|
6
|
-
#
|
7
3
|
# This plugin does not attempt to require capybara. It assumes that if you're
|
8
4
|
# using capybara, you're probably using something like Bundler which has already
|
9
5
|
# required it for you.
|
@@ -12,134 +8,127 @@
|
|
12
8
|
# rspeckled.
|
13
9
|
#
|
14
10
|
# The same goes for capybara-webkit. It must be required before rspeckled.
|
15
|
-
#
|
16
|
-
begin
|
17
|
-
require 'capybara/rspec'
|
18
|
-
require 'capybara/rails'
|
19
|
-
|
20
|
-
if defined?(Capybara::Driver::Base)
|
21
|
-
downloads_directory = "#{Dir.pwd}/tmp/downloads/"
|
22
|
-
Dir.mkdir(downloads_directory) unless Dir.exist?(downloads_directory)
|
23
|
-
|
24
|
-
chrome_options = {
|
25
|
-
'chromeOptions' => {
|
26
|
-
'prefs' => {
|
27
|
-
'profile.default_content_settings.popups' => 0,
|
28
|
-
'download.default_directory' => downloads_directory,
|
29
|
-
},
|
30
|
-
'args' => %w{
|
31
|
-
window-size=1920,1200
|
32
|
-
},
|
33
|
-
},
|
34
|
-
}
|
35
|
-
|
36
|
-
Capybara.register_driver :chrome do |app|
|
37
|
-
Capybara::Selenium::Driver.new(
|
38
|
-
app,
|
39
|
-
:browser => :chrome,
|
40
|
-
:desired_capabilities => Selenium::WebDriver::Remote::Capabilities.chrome(chrome_options)
|
41
|
-
)
|
42
|
-
end
|
43
11
|
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
12
|
+
require 'capybara/rspec'
|
13
|
+
require 'capybara/rails'
|
14
|
+
|
15
|
+
downloads_directory = "#{Dir.pwd}/tmp/downloads/"
|
16
|
+
Dir.mkdir(downloads_directory) unless Dir.exist?(downloads_directory)
|
17
|
+
|
18
|
+
chrome_options = {
|
19
|
+
'chromeOptions' => {
|
20
|
+
'prefs' => {
|
21
|
+
'profile.default_content_settings.popups' => 0,
|
22
|
+
'download.default_directory' => downloads_directory,
|
23
|
+
},
|
24
|
+
'args' => %w{
|
25
|
+
window-size=1920,1200
|
26
|
+
},
|
27
|
+
},
|
28
|
+
}
|
29
|
+
|
30
|
+
Capybara.register_driver :chrome do |app|
|
31
|
+
Capybara::Selenium::Driver.new(
|
32
|
+
app,
|
33
|
+
:browser => :chrome,
|
34
|
+
:desired_capabilities => Selenium::WebDriver::Remote::Capabilities.chrome(chrome_options)
|
35
|
+
)
|
36
|
+
end
|
56
37
|
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
38
|
+
headless_chrome_options = chrome_options.dup
|
39
|
+
headless_chrome_options['chromeOptions']['binary'] = '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome'
|
40
|
+
headless_chrome_options['chromeOptions']['args'] << 'headless'
|
41
|
+
headless_chrome_options['chromeOptions']['args'] << 'disable-gpu'
|
42
|
+
|
43
|
+
Capybara.register_driver :headless_chrome do |app|
|
44
|
+
Capybara::Selenium::Driver.new(
|
45
|
+
app,
|
46
|
+
:browser => :chrome,
|
47
|
+
:desired_capabilities => Selenium::WebDriver::Remote::Capabilities.chrome(headless_chrome_options)
|
48
|
+
)
|
49
|
+
end
|
62
50
|
|
63
|
-
|
64
|
-
|
65
|
-
|
51
|
+
firefox_profile = Selenium::WebDriver::Firefox::Profile.new
|
52
|
+
firefox_profile['browser.download.dir'] = downloads_directory
|
53
|
+
firefox_profile['browser.download.folderList'] = 2
|
54
|
+
firefox_profile['browser.helperApps.neverAsk.saveToDisk'] = 'images/jpeg, application/pdf, application/octet-stream'
|
55
|
+
firefox_profile['pdfjs.disabled'] = true
|
66
56
|
|
67
|
-
|
68
|
-
|
69
|
-
|
57
|
+
Capybara.register_driver :firefox do |app|
|
58
|
+
Capybara::Selenium::Driver.new(app, :browser => :firefox, :profile => firefox_profile)
|
59
|
+
end
|
70
60
|
|
71
|
-
|
72
|
-
Capybara.javascript_driver = :webkit
|
61
|
+
Selenium::WebDriver.logger.output = 'log/selenium.log' if defined?(Selenium::WebDriver)
|
73
62
|
|
74
|
-
|
75
|
-
|
76
|
-
config.skip_image_loading
|
63
|
+
if defined?(Capybara::Webkit)
|
64
|
+
Capybara.javascript_driver = :webkit
|
77
65
|
|
78
|
-
|
79
|
-
|
80
|
-
|
66
|
+
Capybara::Webkit.configure do |config|
|
67
|
+
config.block_unknown_urls
|
68
|
+
config.skip_image_loading
|
81
69
|
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
end
|
86
|
-
end
|
87
|
-
else
|
88
|
-
Capybara.javascript_driver = :selenium
|
89
|
-
end
|
70
|
+
config.allow_url('*.lvh.me')
|
71
|
+
config.allow_url('*.cloudfront.net')
|
72
|
+
config.allow_url('*.s3.amazonaws.com')
|
90
73
|
|
91
|
-
|
92
|
-
config.
|
93
|
-
|
94
|
-
end
|
95
|
-
|
96
|
-
config.before(:each, :js => true, :autofocus => true) do
|
97
|
-
Thread.new do
|
98
|
-
sleep 1.5
|
99
|
-
|
100
|
-
`
|
101
|
-
osascript -e '
|
102
|
-
tell the application named "Firefox"
|
103
|
-
activate
|
104
|
-
|
105
|
-
set theWindow to the first item of windows
|
106
|
-
|
107
|
-
if index of theWindow is not 1 then
|
108
|
-
set index to 1
|
109
|
-
set visible to false
|
110
|
-
set visible to true
|
111
|
-
end if
|
112
|
-
end tell
|
113
|
-
' > /dev/null
|
114
|
-
`
|
115
|
-
end
|
116
|
-
end
|
117
|
-
|
118
|
-
config.after(:each, :js => true, :autofocus => true) do
|
119
|
-
sleep 10
|
120
|
-
end
|
121
|
-
|
122
|
-
config.before(:each, :js => true, :feature => true, :debug => true) do
|
123
|
-
Selenium::WebDriver.logger.level = :debug if defined?(Selenium::WebDriver)
|
124
|
-
end
|
125
|
-
|
126
|
-
config.after(:each, :js => true, :feature => true, :debug => true) do
|
127
|
-
Selenium::WebDriver.logger.level = :warn if defined?(Selenium::WebDriver)
|
128
|
-
end
|
74
|
+
if defined?(Chamber)
|
75
|
+
config.allow_url("*.#{Chamber.env.http.host}")
|
76
|
+
config.allow_url("*.#{Chamber.env.http.web_client_domain}")
|
129
77
|
end
|
78
|
+
end
|
79
|
+
else
|
80
|
+
Capybara.javascript_driver = :selenium
|
81
|
+
end
|
130
82
|
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
83
|
+
Capybara.configure do |config|
|
84
|
+
config.exact = true
|
85
|
+
config.match = :one
|
86
|
+
config.ignore_hidden_elements = true
|
87
|
+
config.visible_text_only = true
|
88
|
+
end
|
137
89
|
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
90
|
+
if defined?(Chamber)
|
91
|
+
Capybara.default_host = Chamber.env.http.host_with_port
|
92
|
+
Capybara.app_host = Chamber.env.http.base_url
|
93
|
+
Capybara.server_port = Chamber.env.http.port
|
94
|
+
end
|
95
|
+
|
96
|
+
RSpec.configure do |config|
|
97
|
+
config.before(:each, :js => true) do
|
98
|
+
page.driver.reset!
|
99
|
+
end
|
100
|
+
|
101
|
+
config.before(:each, :js => true, :autofocus => true) do
|
102
|
+
Thread.new do
|
103
|
+
sleep 1.5
|
104
|
+
|
105
|
+
`
|
106
|
+
osascript -e '
|
107
|
+
tell the application named "Firefox"
|
108
|
+
activate
|
109
|
+
|
110
|
+
set theWindow to the first item of windows
|
111
|
+
|
112
|
+
if index of theWindow is not 1 then
|
113
|
+
set index to 1
|
114
|
+
set visible to false
|
115
|
+
set visible to true
|
116
|
+
end if
|
117
|
+
end tell
|
118
|
+
' > /dev/null
|
119
|
+
`
|
142
120
|
end
|
143
121
|
end
|
144
|
-
|
122
|
+
|
123
|
+
config.after(:each, :js => true, :autofocus => true) do
|
124
|
+
sleep 10
|
125
|
+
end
|
126
|
+
|
127
|
+
config.before(:each, :js => true, :feature => true, :debug => true) do
|
128
|
+
Selenium::WebDriver.logger.level = :debug if defined?(Selenium::WebDriver)
|
129
|
+
end
|
130
|
+
|
131
|
+
config.after(:each, :js => true, :feature => true, :debug => true) do
|
132
|
+
Selenium::WebDriver.logger.level = :warn if defined?(Selenium::WebDriver)
|
133
|
+
end
|
145
134
|
end
|
@@ -1,36 +1,28 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
# CarrierWave Plugin
|
5
|
-
##############################################################################
|
3
|
+
require 'carrierwave/test/matchers'
|
6
4
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
RSpec.configure do |config|
|
12
|
-
config.include CarrierWave::Test::Matchers, :file_attachment => true
|
13
|
-
end
|
5
|
+
RSpec.configure do |config|
|
6
|
+
config.include CarrierWave::Test::Matchers, :file_attachment => true
|
7
|
+
end
|
14
8
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
9
|
+
CarrierWave.configure do |config|
|
10
|
+
config.storage = :file
|
11
|
+
config.root = File.expand_path('./tmp')
|
12
|
+
config.enable_processing = false
|
13
|
+
end
|
20
14
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
15
|
+
RSpec.configure do |config|
|
16
|
+
config.around(:each, :file_attachment => true) do |example|
|
17
|
+
previous_carrierwave_processing_mode = subject.class.enable_processing
|
18
|
+
previous_carrierwave_storage_mode = subject.class.storage
|
25
19
|
|
26
|
-
|
27
|
-
|
20
|
+
subject.class.enable_processing = true
|
21
|
+
subject.class.storage = :file
|
28
22
|
|
29
|
-
|
23
|
+
example.run
|
30
24
|
|
31
|
-
|
32
|
-
|
33
|
-
end
|
25
|
+
subject.class.storage = previous_carrierwave_storage_mode
|
26
|
+
subject.class.enable_processing = previous_carrierwave_processing_mode
|
34
27
|
end
|
35
|
-
rescue LoadError
|
36
28
|
end
|
@@ -1,49 +1,35 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
##############################################################################
|
4
|
-
# Database Cleaner Plugin
|
5
|
-
##############################################################################
|
6
|
-
|
7
3
|
begin
|
8
|
-
|
4
|
+
autodetected = DatabaseCleaner::Base.new.__send__(:autodetect)
|
5
|
+
rescue DatabaseCleaner::NoORMDetected
|
6
|
+
autodetected = false
|
7
|
+
end
|
9
8
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
9
|
+
return unless autodetected
|
10
|
+
|
11
|
+
RSpec.configure do |config|
|
12
|
+
config.before(:suite) do
|
13
|
+
DatabaseCleaner.clean_with(:truncation, :except => %w{ar_internal_metadata})
|
14
14
|
end
|
15
15
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
16
|
+
config.around(:each) do |example|
|
17
|
+
DatabaseCleaner.strategy = if example.metadata[:js] || %i{mongoid}.include?(autodetected)
|
18
|
+
[:truncation, :except => %w{ar_internal_metadata}]
|
19
|
+
else
|
20
|
+
:transaction
|
21
|
+
end
|
21
22
|
|
22
|
-
|
23
|
-
DatabaseCleaner.strategy = if example.metadata[:js] || %i{mongoid}.include?(autodetected)
|
24
|
-
[:truncation, :except => %w{ar_internal_metadata}]
|
25
|
-
else
|
26
|
-
:transaction
|
27
|
-
end
|
23
|
+
DatabaseCleaner.start
|
28
24
|
|
29
|
-
|
25
|
+
example.run
|
30
26
|
|
31
|
-
|
27
|
+
DatabaseCleaner.clean
|
28
|
+
end
|
29
|
+
end
|
32
30
|
|
33
|
-
|
34
|
-
end
|
35
|
-
end
|
31
|
+
return unless defined?(RSpec::Rails)
|
36
32
|
|
37
|
-
|
38
|
-
|
39
|
-
config.use_transactional_fixtures = false
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
rescue LoadError
|
44
|
-
if defined? RSpec::Rails
|
45
|
-
RSpec.configure do |config|
|
46
|
-
config.use_transactional_fixtures = true
|
47
|
-
end
|
48
|
-
end
|
33
|
+
RSpec.configure do |config|
|
34
|
+
config.use_transactional_fixtures = false
|
49
35
|
end
|