flatware-cucumber 2.3.4 → 2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c603712194864fa1fe891dbed45a3aeafc08c032c2fe46012d4f1d8d0c11ac95
4
- data.tar.gz: 9e2c51572523edd4bd844d9038e7346a9121017b678884326f8607d401eda218
3
+ metadata.gz: a8838b90c9927d0c28499c701809b3b6f55d4530bf41e64ba19c3104da9f6573
4
+ data.tar.gz: 98079695269f05a79f9513771967760cf8582204f6e96dcdb8538e956ac3278a
5
5
  SHA512:
6
- metadata.gz: 6ccce616444d778855811457fa7ddea01f19effb18068530d2fb64a0e8b1bfe2d21c3d9b4bfa18d4fe5c8d43384f1cf905bdefff80fb359a99253b0903c08d1a
7
- data.tar.gz: 8a7f0985e3662453bfebaa76fec89a47c9849d7f7a182a5c25aaa45be3321c65299482647240d4c2645b3dab1256efd779f75f1416e4c6676574eae7b3d3d389
6
+ metadata.gz: cafca8e5c41842c0bc78a50f6073f20b2668d92138870f1d7739986c7ad882fd05d8ecf65049968a8f2060cff5ac854f40d5f58834e412e3b0ad1c1417625b7f
7
+ data.tar.gz: 0a8d4a0f1d79fe5a5341af21e69d363d48d4ca4461454c01c288c4edf4a8175173b9205e477ce1135cc6c88a05ec0ccc928a620369265dc23dc76bfd283bb541
data/README.md CHANGED
@@ -1,7 +1,4 @@
1
- # Flatware [![Code Climate][code-climate-badge]][code-climate]
2
-
3
- [code-climate-badge]: https://codeclimate.com/github/briandunn/flatware.svg
4
- [code-climate]: https://codeclimate.com/github/briandunn/flatware
1
+ # Flatware
5
2
 
6
3
  Flatware parallelizes your test suite to significantly reduce test time.
7
4
 
@@ -1,7 +1,6 @@
1
1
  require 'cucumber'
2
2
  require 'flatware/sink'
3
3
  require 'ostruct'
4
- require 'set'
5
4
 
6
5
  module Flatware
7
6
  module Cucumber
@@ -7,6 +7,7 @@ module Flatware
7
7
  class Console
8
8
  class Summary
9
9
  include ::Cucumber::Formatter::Console
10
+
10
11
  attr_reader :io, :steps, :scenarios
11
12
 
12
13
  def initialize(steps, scenarios = [], io = StringIO.new)
@@ -9,8 +9,8 @@ module Flatware
9
9
  end
10
10
 
11
11
  class << self
12
- def step(*args)
13
- step = StepResult.new(*args)
12
+ def step(*)
13
+ step = StepResult.new(*)
14
14
  new step.progress, [step]
15
15
  end
16
16
 
@@ -35,12 +35,23 @@ module Flatware
35
35
  def configure(args, out_stream = $stdout, error_stream = $stderr)
36
36
  raw_args = args.dup
37
37
  cli_config = ::Cucumber::Cli::Configuration.new(out_stream, error_stream)
38
- cli_config.parse! args + %w[--format Flatware::Cucumber::Formatter]
38
+ cli_config.parse! args + %w[--format Flatware::Cucumber::Formatter --publish-quiet]
39
39
  cucumber_config = ::Cucumber::Configuration.new cli_config
40
40
  Config.new cucumber_config, raw_args
41
41
  end
42
42
 
43
43
  def run(feature_files, options)
44
+ # TODO: This will eventually stop working. This ensures step definitions are evaluated on each execution
45
+ # by using `load` instead of once per Ruby runtime using `require`.
46
+ #
47
+ # If we use the same runtime object and reconfigure it on each execution here, the wrong feature files will
48
+ # be evaluated since their memoized. Unfortunately, this means there's no straightforward way to both ensure
49
+ # step definitions are available on every runtime *and* also ensure Cucumber isn't memoizing the feature files
50
+ # to run.
51
+ #
52
+ # For now, the legacy autoloader is the only option to keep everything working properly.
53
+ ::Cucumber.use_legacy_autoloader ||= true
54
+
44
55
  runtime(Array(feature_files) + options).run!
45
56
  end
46
57
 
metadata CHANGED
@@ -1,43 +1,56 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flatware-cucumber
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.4
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Dunn
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2025-01-03 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: cucumber
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
- - - "~>"
16
+ - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: '3.0'
18
+ version: '10.0'
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
- - - "~>"
23
+ - - ">="
25
24
  - !ruby/object:Gem::Version
26
- version: '3.0'
25
+ version: '10.0'
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: flatware
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
30
  - - '='
32
31
  - !ruby/object:Gem::Version
33
- version: 2.3.4
32
+ version: 2.4.0
34
33
  type: :runtime
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
37
  - - '='
39
38
  - !ruby/object:Gem::Version
40
- version: 2.3.4
39
+ version: 2.4.0
40
+ - !ruby/object:Gem::Dependency
41
+ name: ostruct
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
41
54
  description: A distributed cucumber runner
42
55
  email: brian@hashrocket.com
43
56
  executables: []
@@ -61,7 +74,6 @@ homepage: http://github.com/briandunn/flatware
61
74
  licenses:
62
75
  - MIT
63
76
  metadata: {}
64
- post_install_message:
65
77
  rdoc_options: []
66
78
  require_paths:
67
79
  - lib
@@ -69,18 +81,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
69
81
  requirements:
70
82
  - - ">="
71
83
  - !ruby/object:Gem::Version
72
- version: '2.6'
84
+ version: '3.2'
73
85
  - - "<"
74
86
  - !ruby/object:Gem::Version
75
- version: '3.5'
87
+ version: '4.1'
76
88
  required_rubygems_version: !ruby/object:Gem::Requirement
77
89
  requirements:
78
90
  - - ">="
79
91
  - !ruby/object:Gem::Version
80
92
  version: '0'
81
93
  requirements: []
82
- rubygems_version: 3.5.22
83
- signing_key:
94
+ rubygems_version: 3.6.9
84
95
  specification_version: 4
85
96
  summary: A distributed cucumber runner
86
97
  test_files: []