evil_systems 0.2.0 → 1.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7ac55c0ee239d85c3181765a4421073e7905f65df50cbb20d64899e37ceac37c
4
- data.tar.gz: f7e111b1a140dc381ff78df22612c06b18c917c06e37272739e91f4d5e7664d0
3
+ metadata.gz: a1800bf37ee2b05f01d152d6b81a394d2b3b46632db9698d4482aad091143cd4
4
+ data.tar.gz: 27f9e537d9812cf307ad5075555f98ec7a28a3eee53f662bbb508a2e3f67471a
5
5
  SHA512:
6
- metadata.gz: 3bbc2b9279723ae17377f5b3dd51ddbefd98411b2f9ce600fe3aacd8cc2ee6c0f0f68fe5c755e180e82e981f2bd9d9bc55b1e7ae20c28c29adcb30cd3332c9c2
7
- data.tar.gz: 296f841ef1e8fbe93c126e4f5cd4dc4af2890724fb0068ff9baf7984c57185a90048476090784263291dfdfe16a0658fd54a84ae435ea3b27987098f49aa2d5c
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 :cuprite
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 two keyword arguments, `:task`, and
87
- `silent`.
86
+ `EvilSystems.initial_setup` takes three keyword arguments, `:task`, and
87
+ `silent`, `skip_task`.
88
88
 
89
- Both arguments have to do with precompiling assets.
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 `:cuprite` driver if `Capybara::Cuprite`
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
- `:cuprite`
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 :cuprite, using: :chrome, screen_size: [1400, 1400]
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(:cuprite) do |app|
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 = :cuprite
40
+ Capybara.default_driver = Capybara.javascript_driver = :evil_cuprite
@@ -1,3 +1,3 @@
1
1
  module EvilSystems
2
- VERSION = "0.2.0"
2
+ VERSION = "1.0.0"
3
3
  end
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.2.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: 2021-11-26 00:00:00.000000000 Z
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.1.6
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: []