guard-rspec 4.6.1 → 4.6.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d6f8f0ec11addb557bcea8e0b4e67b2f53bc9fc0
4
- data.tar.gz: 72f89cda0c8952689eac3466d5450e458d3ecbde
3
+ metadata.gz: 04c187f95cb55d3b3c177679cf1f57f09fbe654e
4
+ data.tar.gz: 50adaf9c367ab6346a7433265916e6db9439ae60
5
5
  SHA512:
6
- metadata.gz: f87137e2042acd5bd024d0d094c020411dc55c9b68c7edec9b87c8fb7f5238445af78f65e0041653137d6e6187e1f1d74b4eb13066b687129258a1d18dc5c934
7
- data.tar.gz: 9d6b60cdb428ac5f33a0a8ebdc12d33f053bfb2184c6c56200d18cc48137aab79e28ce3fddf5ed2913efaca45c00249fa80e4f942c9a45569b8f5bec34ac1de3
6
+ metadata.gz: a496bc4e6a816e4b9b12807f42e2ff27a062ad8564bb06caa937282941f8071bccd68c7d9ec77e445960821456a3cd19dc2d15ba6b7e059fef6af9c7573024fe
7
+ data.tar.gz: f1ab9ca51ee6b43dc752b7d6c41cb6906ff2cab54a42d45fc89fddb2ff4aa5b4f059c374963a9d4e5eba9148d51e661e0ed278555a9a21c24cdca607aa376a18
data/README.md CHANGED
@@ -109,32 +109,11 @@ guard :rspec, cmd: 'rspec -f html -o ./tmp/spec_results.html', launchy: './tmp/s
109
109
  end
110
110
  ```
111
111
 
112
- ### Integration with Zeus
112
+ ### Zeus Integration
113
113
 
114
- First, know that Guard::Zeus also generates a Guardfile template with RSpec commands - if you prefer Guard::RSpec, you may want to keep Guard::Zeus, but without the RSpec running commands (so you can manage the Guard::Zeus server instead of running it manually).
115
-
116
- Second, since Guard::RSpec 4.6.x, the output file name is passed using environment variables - but Zeus doesn't pass these when rerunning tests, so you get this error: #334
117
-
118
- The workaround is to create a custom Zeus plan:
119
-
120
- 1. `zeus init`
121
- 2. edit `custom_plan.rb` to contain the following:
122
-
123
- ```ruby
124
- require 'zeus/rails'
125
-
126
- class CustomPlan < Zeus::Rails
127
- def test(*args)
128
- ENV['GUARD_RSPEC_RESULTS_FILE'] = 'tmp/guard_rspec_results.txt' # Guard::RSpec::Runner::TEMPORARY_FILE_PATH
129
- super
130
- end
131
- end
132
-
133
- Zeus.plan = CustomPlan.new
134
- ```
135
-
136
- And that's it. (I'd like things to work without this, but I don't know how.)
114
+ You can use plain `Zeus` or you can use `Guard::Zeus` for managing the `Zeus` server (but you'll want to remove the spec watchers from `Guard::Zeus`, or you'll have tests running multiple times).
137
115
 
116
+ Also, if you get warnings about empty environment, be sure to [read about this workaround](https://github.com/guard/guard-rspec/wiki/Warning:-no-environment)
138
117
 
139
118
  ### Using parallel_tests
140
119
 
@@ -39,7 +39,9 @@ module Guard
39
39
  return true if paths.empty?
40
40
  Compat::UI.info("Running: #{paths.join(' ')}", reset: true)
41
41
  _run(paths, options) do |all_green|
42
- run_all if options[:all_after_pass] && all_green
42
+ next false unless all_green
43
+ next true unless options[:all_after_pass]
44
+ run_all
43
45
  end
44
46
  end
45
47
 
@@ -53,7 +55,6 @@ module Guard
53
55
  fail NoCmdOptionError unless options[:cmd]
54
56
  command = Command.new(paths, options)
55
57
  _really_run(command, options, &block)
56
- true
57
58
  rescue RSpecProcess::Failure, NoCmdOptionError => ex
58
59
  Compat::UI.error(ex.to_s)
59
60
  notifier.notify_failure
@@ -71,7 +72,12 @@ module Guard
71
72
  notifier.notify(results.summary)
72
73
  _open_launchy
73
74
 
74
- yield process.all_green? if block_given?
75
+ all_green = process.all_green?
76
+ if block_given?
77
+ yield all_green
78
+ else
79
+ all_green
80
+ end
75
81
  end
76
82
 
77
83
  def _open_launchy
@@ -1,5 +1,5 @@
1
1
  module Guard
2
2
  module RSpecVersion
3
- VERSION = "4.6.1"
3
+ VERSION = "4.6.2"
4
4
  end
5
5
  end
@@ -137,6 +137,20 @@ RSpec.describe Guard::RSpec::Runner do
137
137
  expect(notifier).to have_received(:notify_failure)
138
138
  end
139
139
  end
140
+
141
+ describe "return value" do
142
+ subject { runner.run_all }
143
+
144
+ it { is_expected.to be true }
145
+
146
+ context "when process is not all green" do
147
+ before do
148
+ allow(process).to receive(:all_green?).and_return(false)
149
+ end
150
+
151
+ it { is_expected.to be false }
152
+ end
153
+ end
140
154
  end
141
155
 
142
156
  describe "#run" do
@@ -284,5 +298,35 @@ RSpec.describe Guard::RSpec::Runner do
284
298
  expect(notifier).to receive(:notify_failure)
285
299
  runner.run(paths)
286
300
  end
301
+
302
+ describe "return value" do
303
+ subject { runner.run(paths) }
304
+
305
+ it { is_expected.to be true }
306
+
307
+ context "with all_after_pass option" do
308
+ let(:options) do
309
+ { cmd: "rspec", all_after_pass: true, run_all: {}, spec_paths: paths }
310
+ end
311
+
312
+ it { is_expected.to be true }
313
+
314
+ describe "when all tests fail" do
315
+ before do
316
+ allow(process).to receive(:all_green?).and_return(true, false)
317
+ end
318
+
319
+ it { is_expected.to be false }
320
+ end
321
+ end
322
+
323
+ context "when process is not all green" do
324
+ before do
325
+ allow(process).to receive(:all_green?).and_return(false)
326
+ end
327
+
328
+ it { is_expected.to be false }
329
+ end
330
+ end
287
331
  end
288
332
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: guard-rspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.6.1
4
+ version: 4.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thibaud Guillaume-Gentil
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-10 00:00:00.000000000 Z
11
+ date: 2015-07-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: guard