rspec-eventually 0.0.2 → 0.1.0

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: ea0bab5bdc95cf38f998961771feed626f67b865
4
- data.tar.gz: a4a3fc30a1f511dd8a2b29de71afd32c60a318e6
3
+ metadata.gz: c0572070062aed5c336c449433d973c8db9e1726
4
+ data.tar.gz: 4fb01d14e5b1001849134c0a0e5234a407907c39
5
5
  SHA512:
6
- metadata.gz: 7f5406d011216ea853af5281fa2d6fc56301b539a1752c6c91c75f73f5c87f04602016a0ea110b68e25c44e520031c1466a352e931158ad2813281bad1efb2c5
7
- data.tar.gz: 4125dca11af2ede3837f4853df802a975ec8ea14b9ad3b1a190fac643a1093390126e7817b657f967086cc1360a174f57493ee132bc1851e6e06908db8b7eb54
6
+ metadata.gz: 3fda5e0da10d7062ba4826de7a4233616bbf20c87666da2105121974f103e51ef1352030791d9f9da2a79c4d8ced7a4c4312448b006cdf86119bb7ed9aa9ec58
7
+ data.tar.gz: e7ace1dd7399e3bacfbaf2a497e35dd789428d2701810ab1c09b5e9de6b8d1df71befff629e1f0f5be1e38fd6d38f5eb660e88019224870238f72567dc6f147d
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Build Status](https://travis-ci.org/hawknewton/rspec-eventually.svg?branch=master)](https://travis-ci.org/hawknewton/rspec-eventually)
1
+ [![Build Status](https://travis-ci.org/hawknewton/rspec-eventually.svg?branch=master)](https://travis-ci.org/hawknewton/rspec-eventually) [![Gem Version](https://badge.fury.io/rb/rspec-eventually.svg)](http://badge.fury.io/rb/rspec-eventually)
2
2
  # Rspec::Eventually
3
3
 
4
4
  I want to be able to do something like this:
@@ -1,5 +1,5 @@
1
1
  module Rspec
2
2
  module Eventually
3
- VERSION = '0.0.2'
3
+ VERSION = '0.1.0'
4
4
  end
5
5
  end
@@ -15,10 +15,11 @@ module Rspec
15
15
  tap { @suppress_errors = true }
16
16
  end
17
17
 
18
- def initialize(target)
18
+ def initialize(target, custom_msg = nil)
19
19
  @target = target
20
20
  @tries = 0
21
21
  @negative = false
22
+ @custom_msg = custom_msg
22
23
  end
23
24
 
24
25
  def matches?(expected_block)
@@ -32,7 +33,8 @@ module Rspec
32
33
  end
33
34
 
34
35
  def failure_message
35
- "After #{@tries} tries, the last failure message was:\n#{@target.failure_message}"
36
+ msg = @custom_msg || @target.failure_message
37
+ "After #{@tries} tries, the last failure message was:\n#{msg}"
36
38
  end
37
39
 
38
40
  def not
@@ -75,12 +77,12 @@ module Rspec
75
77
  end
76
78
  end
77
79
 
78
- def eventually(target)
79
- Eventually.new target
80
+ def eventually(target, custom_msg = nil)
81
+ Eventually.new(target, custom_msg)
80
82
  end
81
83
 
82
- def eventually_not(target)
83
- Eventually.new(target).not
84
+ def eventually_not(target, custom_msg = nil)
85
+ Eventually.new(target, custom_msg).not
84
86
  end
85
87
 
86
88
  RSpec.configure do |config|
@@ -97,6 +97,13 @@ module Rspec
97
97
 
98
98
  expect { block.call }.to raise_error(/Timeout before first evaluation/)
99
99
  end
100
+
101
+ it 'supports custom error messages' do
102
+ (matcher = Eventually.new(eq(1), '0 is not within 0.5 of 1').within(0.5)).matches? -> { 0 }
103
+ message = matcher.failure_message
104
+ expect(message).to match(/After [0-9]+ tries, the last failure message was/)
105
+ expect(message).to match(/0 is not within 0.5 of 1/)
106
+ end
100
107
  end
101
108
  end
102
109
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-eventually
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hawk Newton
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-23 00:00:00.000000000 Z
11
+ date: 2015-12-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -107,11 +107,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
107
107
  version: '0'
108
108
  requirements: []
109
109
  rubyforge_project:
110
- rubygems_version: 2.2.2
110
+ rubygems_version: 2.2.3
111
111
  signing_key:
112
112
  specification_version: 4
113
113
  summary: Make your matchers match eventually
114
114
  test_files:
115
115
  - spec/eventually_spec.rb
116
116
  - spec/spec_helper.rb
117
- has_rdoc: