pludoni_rspec 0.3.0 → 0.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 +5 -5
- data/Gemfile.lock +10 -2
- data/README.md +21 -18
- data/lib/pludoni_rspec/capybara.rb +6 -5
- data/lib/pludoni_rspec/version.rb +1 -1
- data/lib/pludoni_rspec.rb +5 -0
- data/pludoni_rspec.gemspec +2 -1
- metadata +19 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: c393669f7cd2eaecf5c0c3d3011b3a153e2252b7291146bba6a833d2bf8571f0
|
4
|
+
data.tar.gz: 4c94fd50de54c29c42480dbb7416835886e10c7323ae8d88cb1f09a64c6dc048
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b0571f7aa1375504f111b4e947145a35bd59672781b5119fcf376ee1ba1454a3ab26b1dd3e653d492c9f1a3df5a9a52d6acbc084d1c9289dfa92f6c7e3b22f50
|
7
|
+
data.tar.gz: ce140a811dd31f7221afaed0bbcf8908c2fe8d91d416f4fc731dd2fb197662e83dfaf7db18cfc2bd42f7fc1d2b78c2354b5fb746a70991f606c82b6b0a2f44e4
|
data/Gemfile.lock
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
pludoni_rspec (0.
|
4
|
+
pludoni_rspec (0.4.0)
|
5
5
|
capybara (>= 3.0.0)
|
6
6
|
chromedriver-helper (>= 1.2.0)
|
7
|
+
fuubar (>= 2.3.1)
|
7
8
|
headless (>= 2.3.1)
|
8
9
|
pry-rails
|
9
10
|
puma
|
@@ -32,6 +33,9 @@ GEM
|
|
32
33
|
coderay (1.1.2)
|
33
34
|
docile (1.3.1)
|
34
35
|
ffi (1.9.25)
|
36
|
+
fuubar (2.3.1)
|
37
|
+
rspec-core (~> 3.0)
|
38
|
+
ruby-progressbar (~> 1.4)
|
35
39
|
headless (2.3.1)
|
36
40
|
io-like (0.3.0)
|
37
41
|
json (2.1.0)
|
@@ -51,6 +55,10 @@ GEM
|
|
51
55
|
rack-test (1.0.0)
|
52
56
|
rack (>= 1.0, < 3)
|
53
57
|
rake (10.5.0)
|
58
|
+
rspec-core (3.7.1)
|
59
|
+
rspec-support (~> 3.7.0)
|
60
|
+
rspec-support (3.7.1)
|
61
|
+
ruby-progressbar (1.9.0)
|
54
62
|
rubyzip (1.2.1)
|
55
63
|
selenium-webdriver (3.12.0)
|
56
64
|
childprocess (~> 0.5)
|
@@ -72,4 +80,4 @@ DEPENDENCIES
|
|
72
80
|
rake (~> 10.0)
|
73
81
|
|
74
82
|
BUNDLED WITH
|
75
|
-
1.16.
|
83
|
+
1.16.2
|
data/README.md
CHANGED
@@ -14,34 +14,37 @@ PludoniRspec.run
|
|
14
14
|
What's done:
|
15
15
|
|
16
16
|
* Maintain Test Schema
|
17
|
-
* spec/support/**.rb will be loaded for overriding
|
18
|
-
* freeze_time: '' Tag for examples. If Timecop is available, this will be used, otherwise Rails 5.x default travel_to
|
19
|
-
* Simplecov coverage started at beginning
|
17
|
+
* ``spec/support/**.rb`` will be loaded for overriding in projects
|
18
|
+
* ``describe 'what', freeze_time: '2018-01-01 12:00' do`` Tag for examples. If Timecop is available, this will be used, otherwise Rails 5.x default travel_to
|
19
|
+
* Simplecov coverage recording started at beginning
|
20
20
|
* Capybara+Chromedriver config with Chromedriver, Headless (will probably not work on OSX though)
|
21
21
|
* Available Helper:
|
22
|
-
* console_logs
|
23
|
-
* drop_in_dropzone(file_path)
|
24
|
-
* screenshot
|
25
|
-
* skip_confirm(page)
|
26
|
-
* in_browser('user_1') do ... end
|
22
|
+
* ``console_logs`` - Show console log output of browser
|
23
|
+
* ``drop_in_dropzone(file_path)`` - drop a file into the first "Dropzone"
|
24
|
+
* ``screenshot(path=nil)`` - make a screenshot to public/screenshots/*.png
|
25
|
+
* ``skip_confirm(page)`` - ignore all confirm('') alert boxes from now
|
26
|
+
* ``in_browser('user_1') do ... end`` - simulate multi-user scenarios / change browser session
|
27
27
|
|
28
28
|
* Rspec configs:
|
29
|
-
* tmp/rspec.failed.txt to enable --next-failure / --only-failures switches
|
29
|
+
* Persistence Path: ``tmp/rspec.failed.txt`` to enable --next-failure / --only-failures switches
|
30
|
+
* executable: ``nf`` and ``of``
|
31
|
+
* nf -> rspec --next-failure
|
32
|
+
* of -> rspec --only-failures
|
30
33
|
* clears ActionMailer deliveries before each scenario
|
31
|
-
* default backtrace without rails,
|
34
|
+
* default backtrace without rails, fabrication, grape, rack
|
32
35
|
* fixtures in spec/fixtures
|
33
|
-
* Transactional Fixtures enabled - no DatabaseCleaner needed anymore
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
* Devise Test helpers loaded, if Devise is available, and included in Controller specs
|
36
|
+
* Transactional Fixtures enabled - no DatabaseCleaner needed anymore for Rails > 5.1
|
37
|
+
|
38
|
+
Optional - Loaded if companion gem is available:
|
39
|
+
|
40
|
+
* VCR - sensible VCR is available (not required by Gem)
|
41
|
+
* Devise - Test helpers loaded, if Devise is available, and included in Controller specs
|
39
42
|
|
40
43
|
* Shared Contexts that can be included on demand:
|
41
|
-
* include_context 'mails' - For working with ActionMailer::Base.deliveries
|
44
|
+
* ``include_context 'mails'`` - For working with ActionMailer::Base.deliveries
|
42
45
|
* mails_with(to: '') - Filter mails sent to a user
|
43
46
|
* last_mail == ActionMailer::Base.deliveries.last
|
44
47
|
* mails == ActionMailer::Base.deliveries
|
45
48
|
* extract_link_from(last_mail, link: 0) - gets you the link (without protocol + host) of the first link in the last mail with a html body
|
46
|
-
* include_context 'active_job_inline'
|
49
|
+
* ``include_context 'active_job_inline'``
|
47
50
|
* all ActiveJobs will be run immediately in this group
|
@@ -29,15 +29,16 @@ RSpec.configure do |c|
|
|
29
29
|
end
|
30
30
|
c.around(:all, js: true) do |ex|
|
31
31
|
begin
|
32
|
-
if !@headless and
|
32
|
+
if !@headless and PludoniRspec::Config.wrap_js_spec_in_headless
|
33
33
|
@headless = Headless.new(destroy_at_exit: true, reuse: true)
|
34
34
|
@headless.start
|
35
35
|
end
|
36
|
-
# @headless = Headless.new
|
37
|
-
# @headless.start
|
38
36
|
ex.run
|
39
37
|
ensure
|
40
|
-
@headless
|
38
|
+
if @headless and PludoniRspec::Config.destroy_headless
|
39
|
+
puts "DESTROY HEADLESS"
|
40
|
+
@headless.destroy
|
41
|
+
end
|
41
42
|
end
|
42
43
|
end
|
43
44
|
end
|
@@ -50,4 +51,4 @@ RSpec.configure do |config|
|
|
50
51
|
config.include PludoniRspec::SystemTestChromeHelper, type: :feature
|
51
52
|
config.include PludoniRspec::SystemTestChromeHelper, type: :system
|
52
53
|
end
|
53
|
-
Capybara.default_max_wait_time =
|
54
|
+
Capybara.default_max_wait_time = 30
|
data/lib/pludoni_rspec.rb
CHANGED
@@ -6,15 +6,20 @@ module PludoniRspec
|
|
6
6
|
class << self
|
7
7
|
attr_accessor :chrome_driver_version
|
8
8
|
attr_accessor :chrome_window_size
|
9
|
+
attr_accessor :destroy_headless
|
10
|
+
attr_accessor :wrap_js_spec_in_headless
|
9
11
|
end
|
10
12
|
self.chrome_driver_version = "2.36"
|
11
13
|
self.chrome_window_size = '1600,1200'
|
14
|
+
self.destroy_headless = true
|
15
|
+
self.wrap_js_spec_in_headless = RbConfig::CONFIG['host_os']['linux']
|
12
16
|
end
|
13
17
|
def self.run
|
14
18
|
ENV["RAILS_ENV"] ||= 'test'
|
15
19
|
coverage!
|
16
20
|
require 'pry'
|
17
21
|
require File.expand_path("config/environment", Dir.pwd)
|
22
|
+
abort("The Rails environment is running in production mode!") if Rails.env.production?
|
18
23
|
require 'rspec/rails'
|
19
24
|
|
20
25
|
require 'pludoni_rspec/spec_helper'
|
data/pludoni_rspec.gemspec
CHANGED
@@ -23,9 +23,10 @@ Gem::Specification.new do |spec|
|
|
23
23
|
# spec.add_dependency "vcr", ">= 3.0.0"
|
24
24
|
spec.add_dependency 'capybara', ">= 3.0.0"
|
25
25
|
spec.add_dependency 'chromedriver-helper', ">= 1.2.0"
|
26
|
+
spec.add_dependency 'fuubar', '>= 2.3.1'
|
26
27
|
spec.add_dependency 'headless', ">= 2.3.1"
|
27
|
-
spec.add_dependency 'puma'
|
28
28
|
spec.add_dependency 'pry-rails'
|
29
|
+
spec.add_dependency 'puma'
|
29
30
|
spec.add_dependency 'selenium-webdriver', ">= 3.12.0"
|
30
31
|
spec.add_dependency 'simplecov', ">= 0.16.1"
|
31
32
|
spec.add_development_dependency "bundler", "~> 1.16"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pludoni_rspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stefan Wienert
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-06-
|
11
|
+
date: 2018-06-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: capybara
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 1.2.0
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: fuubar
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 2.3.1
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 2.3.1
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: headless
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -53,7 +67,7 @@ dependencies:
|
|
53
67
|
- !ruby/object:Gem::Version
|
54
68
|
version: 2.3.1
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
70
|
+
name: pry-rails
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
58
72
|
requirements:
|
59
73
|
- - ">="
|
@@ -67,7 +81,7 @@ dependencies:
|
|
67
81
|
- !ruby/object:Gem::Version
|
68
82
|
version: '0'
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
84
|
+
name: puma
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
87
|
- - ">="
|
@@ -185,7 +199,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
185
199
|
version: '0'
|
186
200
|
requirements: []
|
187
201
|
rubyforge_project:
|
188
|
-
rubygems_version: 2.
|
202
|
+
rubygems_version: 2.7.7
|
189
203
|
signing_key:
|
190
204
|
specification_version: 4
|
191
205
|
summary: pludoni GmbH's RSpec template. Just require in spec_helper
|