evil_systems 0.2.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -0
- data/README.md +11 -6
- data/lib/evil_systems/cuprite_helpers.rb +6 -0
- data/lib/evil_systems/register_cuprite.rb +3 -3
- data/lib/evil_systems/version.rb +1 -1
- data/lib/evil_systems.rb +4 -1
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a1800bf37ee2b05f01d152d6b81a394d2b3b46632db9698d4482aad091143cd4
|
4
|
+
data.tar.gz: 27f9e537d9812cf307ad5075555f98ec7a28a3eee53f662bbb508a2e3f67471a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0505da134fba919c92bc70892b41550ce81ca422ca14e0caf9efc60ed5ea449dddcff00854c039fd89a95ad4edb988bdff5b16cb4ef5799720d6296076365e14
|
7
|
+
data.tar.gz: 4a45024f2ec7bcae400a2804b39f5a87e4d73994ea419f795aa1dffdc8062ef257b95f9e229b77b5c9ad7646ffd46026a767e719dddb270a32860f42447f3a39
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,15 @@
|
|
1
|
+
## 1.0.0
|
2
|
+
|
3
|
+
- 🚨 BREAKING CHANGE - Renamed `:cuprite` driver to
|
4
|
+
`:evil_cuprite` to avoid naming collision in Rails 7.
|
5
|
+
<https://github.com/ParamagicDev/evil_systems/pull/7>
|
6
|
+
|
7
|
+
- Added `wait_for_network_idle!`
|
8
|
+
- Added `:skip_task` to avoid rake tasks all together.
|
9
|
+
<https://github.com/evil_systems/pull/8>
|
10
|
+
|
11
|
+
- Updated test suite to Rails 7
|
12
|
+
|
1
13
|
## 0.2.0
|
2
14
|
|
3
15
|
- Disable animations by default @julianrubisch <https://github.com/ParamagicDev/evil_systems/commit/cf72d1189c8bd8b72f130909f209f543a52aaf50>
|
data/README.md
CHANGED
@@ -69,7 +69,7 @@ require 'evil_systems'
|
|
69
69
|
EvilSystems.initial_setup
|
70
70
|
|
71
71
|
class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
|
72
|
-
driven_by :
|
72
|
+
driven_by :evil_cuprite
|
73
73
|
|
74
74
|
include EvilSystems::Helpers
|
75
75
|
end
|
@@ -83,10 +83,10 @@ end
|
|
83
83
|
|
84
84
|
## Usage
|
85
85
|
|
86
|
-
`EvilSystems.initial_setup` takes
|
87
|
-
`silent`.
|
86
|
+
`EvilSystems.initial_setup` takes three keyword arguments, `:task`, and
|
87
|
+
`silent`, `skip_task`.
|
88
88
|
|
89
|
-
|
89
|
+
They all have to do with precompiling assets.
|
90
90
|
|
91
91
|
`:silent` by default is set to `true` and will only tell you when assets
|
92
92
|
are compiling, and how long the compilation took.
|
@@ -94,6 +94,8 @@ are compiling, and how long the compilation took.
|
|
94
94
|
`:task` defaults to `assets:precompile`, System of a test uses
|
95
95
|
`webpacker:compile`.
|
96
96
|
|
97
|
+
`:skip_task` when `true` says you dont want to run any Rake tasks. Default is `false`
|
98
|
+
|
97
99
|
Example:
|
98
100
|
|
99
101
|
```rb
|
@@ -102,11 +104,11 @@ EvilSystems.initial_setup(task: "webpacker:compile", silent: false)
|
|
102
104
|
|
103
105
|
### Settings
|
104
106
|
|
105
|
-
- [x] - Automatically registers a `:
|
107
|
+
- [x] - Automatically registers a `:evil_cuprite` driver if `Capybara::Cuprite`
|
106
108
|
is defined.
|
107
109
|
|
108
110
|
- [x] - Automatically sets Capybara's default and javascript driver to
|
109
|
-
`:
|
111
|
+
`:evil_cuprite`
|
110
112
|
|
111
113
|
- [x] - Automatically sets `Capybara.app_host`
|
112
114
|
|
@@ -177,6 +179,9 @@ pause
|
|
177
179
|
# Opens a Pry or IRB repl. Will use Pry if Pry is defined, fallsback
|
178
180
|
# to debugging with IRB
|
179
181
|
debug binding
|
182
|
+
|
183
|
+
# waits to make sure theres no active connections.
|
184
|
+
wait_for_network_idle!
|
180
185
|
```
|
181
186
|
|
182
187
|
### Env Variables
|
@@ -18,5 +18,11 @@ module EvilSystems
|
|
18
18
|
|
19
19
|
page.driver.pause
|
20
20
|
end
|
21
|
+
|
22
|
+
# Convenience method to access the drivers `wait_for_network_idle`
|
23
|
+
# @see https://github.com/rubycdp/cuprite/blob/47d8949f30dea3d97dba70d8643abce861e0d652/README.md#network-traffic
|
24
|
+
def wait_for_network_idle!
|
25
|
+
page.driver.wait_for_network_idle
|
26
|
+
end
|
21
27
|
end
|
22
28
|
end
|
@@ -6,7 +6,7 @@ module EvilSystems
|
|
6
6
|
# See https://github.com/rubycdp/cuprite
|
7
7
|
module RegisterCuprite
|
8
8
|
# Registers the Cuprite driver. Can be used via:
|
9
|
-
# driven_by :
|
9
|
+
# driven_by :evil_cuprite, using: :chrome, screen_size: [1400, 1400]
|
10
10
|
# The initial setup prior to the class ApplicationSystemTestCase, runs before the entire test suite.
|
11
11
|
# @return [void]
|
12
12
|
def self.initial_setup
|
@@ -20,7 +20,7 @@ module EvilSystems
|
|
20
20
|
|
21
21
|
remote_options = RemoteChrome.options
|
22
22
|
|
23
|
-
::Capybara.register_driver(:
|
23
|
+
::Capybara.register_driver(:evil_cuprite) do |app|
|
24
24
|
::Capybara::Cuprite::Driver.new(
|
25
25
|
app,
|
26
26
|
**{
|
@@ -37,4 +37,4 @@ module EvilSystems
|
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
40
|
-
Capybara.default_driver = Capybara.javascript_driver = :
|
40
|
+
Capybara.default_driver = Capybara.javascript_driver = :evil_cuprite
|
data/lib/evil_systems/version.rb
CHANGED
data/lib/evil_systems.rb
CHANGED
@@ -11,9 +11,12 @@ module EvilSystems
|
|
11
11
|
# @see Settings#initial_setup
|
12
12
|
# @see RegisterCuprite#initial_setup
|
13
13
|
# @see PrecompileAssets#initial_setup
|
14
|
-
def self.initial_setup(task: "assets:precompile", silent: true)
|
14
|
+
def self.initial_setup(task: "assets:precompile", silent: true, skip_task: false)
|
15
15
|
Settings.initial_setup
|
16
16
|
RegisterCuprite.initial_setup
|
17
|
+
|
18
|
+
return if skip_task
|
19
|
+
|
17
20
|
PrecompileAssets.initial_setup(task: task, silent: silent)
|
18
21
|
end
|
19
22
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: evil_systems
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ParamagicDev
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-02-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: zeitwerk
|
@@ -52,7 +52,7 @@ dependencies:
|
|
52
52
|
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 1.0.0
|
55
|
-
description:
|
55
|
+
description:
|
56
56
|
email:
|
57
57
|
- konnor5456@gmail.com
|
58
58
|
executables: []
|
@@ -80,7 +80,7 @@ metadata:
|
|
80
80
|
homepage_uri: https://github.com/paramagicdev/evil_systems
|
81
81
|
source_code_uri: https://github.com/paramagicdev/evil_systems
|
82
82
|
changelog_uri: https://github.com/paramagicdev/evil_systems/CHANGELOG.md
|
83
|
-
post_install_message:
|
83
|
+
post_install_message:
|
84
84
|
rdoc_options: []
|
85
85
|
require_paths:
|
86
86
|
- lib
|
@@ -95,8 +95,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
requirements: []
|
98
|
-
rubygems_version: 3.
|
99
|
-
signing_key:
|
98
|
+
rubygems_version: 3.3.3
|
99
|
+
signing_key:
|
100
100
|
specification_version: 4
|
101
101
|
summary: Fully integrated setup based on EvilMartians system of a test
|
102
102
|
test_files: []
|