expect 0.0.6 → 0.0.7

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: edc3cd88e9d05092903a37838fc4d788a0c060ed
4
- data.tar.gz: 461f336b1737e23b37c009bc412c9ae69e617326
3
+ metadata.gz: 336151e1a5f05b188de3ad2f0805439d0a5d6f1a
4
+ data.tar.gz: e2217114aa93b3b48b6d53586d007314c6c4d4d7
5
5
  SHA512:
6
- metadata.gz: f25544ad61c275a1333db030c42c8b30f36387c966ee98f49e30d6f3eca6c0c5ee478c7a3051b498861b6ac620975ef1fd16346deeb87171449fb27af4dc3e98
7
- data.tar.gz: 23084bb45623b3a53aaedb056868f2556297c44b01b8834a3a8581b6ecd3dc4f2d08eef877d962fd853f0821ccf9a3d9fd60de0ed0bf39e0a9aaf00d179320ef
6
+ metadata.gz: 176f80942e4a3b2d2bc5af158da01ca5947e9835b6f5ac2e09df118b74d9d182f0432fa55164cec503eb5b3e17d4729a1099c6ae0dec64d057ad479ea804723b
7
+ data.tar.gz: 3c1843de409f2b8b7843149db97a5f9a75de947cd862de7ce39a375bd0468359bfb2ef5b09495e9456741270de02fa72c6ea0719d3f5b58a4a06e73e43169505
data/Gemfile CHANGED
@@ -1,5 +1,3 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
-
5
- gem 'rubysl-irb' if RUBY_ENGINE.eql?('rbx')
@@ -1 +1 @@
1
- 0.0.6
1
+ 0.0.7
@@ -13,7 +13,7 @@ Gem::Specification.new do |spec|
13
13
  spec.executables = spec.files.grep(/^exe\//) { |f| File.basename(f) }
14
14
  spec.require_paths = ['lib']
15
15
 
16
- spec.add_dependency 'matchi', '~> 0.0.3'
16
+ spec.add_dependency 'matchi', '~> 0.0.4'
17
17
 
18
18
  spec.add_development_dependency 'bundler', '~> 1.8'
19
19
  spec.add_development_dependency 'rake', '~> 10.0'
@@ -0,0 +1,7 @@
1
+ module Expect
2
+ # This exception is raised in order to fail a spec.
3
+ #
4
+ # @api private
5
+ class Failure < StandardError
6
+ end
7
+ end
@@ -1,11 +1,20 @@
1
+ require_relative File.join 'exception', 'failure'
1
2
  require_relative 'matcher'
2
3
 
3
4
  module Expect
4
5
  # Wraps the target of an expectation.
5
6
  #
7
+ # @api private
8
+ #
6
9
  # @example
7
- # this { stuff } # => ExpectationTarget wrapping the block
8
- class ExpectationTarget < BasicObject
10
+ # ExpectationTarget.new { 42 }.to equal: 42 # => true
11
+ class ExpectationTarget
12
+ # Create a new expection target
13
+ #
14
+ # @example
15
+ # ExpectationTarget.new { block of code }
16
+ #
17
+ # @yieldparam actual the value which is compared with the expected value.
9
18
  def initialize(&actual)
10
19
  @actual = actual
11
20
  end
@@ -16,9 +25,9 @@ module Expect
16
25
  #
17
26
  # @param [Hash, Symbol] definition
18
27
  #
19
- # @return [Boolean] report if the expectation is true or false
28
+ # @return [Boolean] pass or fail the spec
20
29
  def to(definition)
21
- Matcher.pass?(definition, &@actual)
30
+ match?(definition) || fail(Failure)
22
31
  end
23
32
 
24
33
  # Evaluate to a negative assertion.
@@ -27,9 +36,22 @@ module Expect
27
36
  #
28
37
  # @param [Hash, Symbol] definition
29
38
  #
30
- # @return [Boolean] report if the expectation is true or false
39
+ # @return [Boolean] pass or fail the spec
31
40
  def not_to(definition)
32
- to(definition).equal?(false)
41
+ match?(definition).equal?(false) || fail(Failure)
42
+ end
43
+
44
+ private
45
+
46
+ # Boolean comparison between the actual value and the expected value.
47
+ #
48
+ # @api private
49
+ #
50
+ # @param [Hash, Symbol] definition
51
+ #
52
+ # @return [Boolean] report if the expectation is true or false
53
+ def match?(definition)
54
+ Matcher.pass?(definition, &@actual)
33
55
  end
34
56
  end
35
57
  end
metadata CHANGED
@@ -1,95 +1,95 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: expect
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cyril Wack
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-15 00:00:00.000000000 Z
11
+ date: 2015-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- type: :runtime
15
14
  name: matchi
16
- version_requirements: !ruby/object:Gem::Requirement
15
+ requirement: !ruby/object:Gem::Requirement
17
16
  requirements:
18
17
  - - "~>"
19
18
  - !ruby/object:Gem::Version
20
- version: 0.0.3
19
+ version: 0.0.4
20
+ type: :runtime
21
21
  prerelease: false
22
- requirement: !ruby/object:Gem::Requirement
22
+ version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.0.3
26
+ version: 0.0.4
27
27
  - !ruby/object:Gem::Dependency
28
- type: :development
29
28
  name: bundler
30
- version_requirements: !ruby/object:Gem::Requirement
29
+ requirement: !ruby/object:Gem::Requirement
31
30
  requirements:
32
31
  - - "~>"
33
32
  - !ruby/object:Gem::Version
34
33
  version: '1.8'
34
+ type: :development
35
35
  prerelease: false
36
- requirement: !ruby/object:Gem::Requirement
36
+ version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.8'
41
41
  - !ruby/object:Gem::Dependency
42
- type: :development
43
42
  name: rake
44
- version_requirements: !ruby/object:Gem::Requirement
43
+ requirement: !ruby/object:Gem::Requirement
45
44
  requirements:
46
45
  - - "~>"
47
46
  - !ruby/object:Gem::Version
48
47
  version: '10.0'
48
+ type: :development
49
49
  prerelease: false
50
- requirement: !ruby/object:Gem::Requirement
50
+ version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '10.0'
55
55
  - !ruby/object:Gem::Dependency
56
- type: :development
57
56
  name: yard
58
- version_requirements: !ruby/object:Gem::Requirement
57
+ requirement: !ruby/object:Gem::Requirement
59
58
  requirements:
60
59
  - - "~>"
61
60
  - !ruby/object:Gem::Version
62
61
  version: '0.8'
62
+ type: :development
63
63
  prerelease: false
64
- requirement: !ruby/object:Gem::Requirement
64
+ version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0.8'
69
69
  - !ruby/object:Gem::Dependency
70
- type: :development
71
70
  name: simplecov
72
- version_requirements: !ruby/object:Gem::Requirement
71
+ requirement: !ruby/object:Gem::Requirement
73
72
  requirements:
74
73
  - - "~>"
75
74
  - !ruby/object:Gem::Version
76
75
  version: 0.9.1
76
+ type: :development
77
77
  prerelease: false
78
- requirement: !ruby/object:Gem::Requirement
78
+ version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: 0.9.1
83
83
  - !ruby/object:Gem::Dependency
84
- type: :development
85
84
  name: rubocop
86
- version_requirements: !ruby/object:Gem::Requirement
85
+ requirement: !ruby/object:Gem::Requirement
87
86
  requirements:
88
87
  - - "~>"
89
88
  - !ruby/object:Gem::Version
90
89
  version: '0.29'
90
+ type: :development
91
91
  prerelease: false
92
- requirement: !ruby/object:Gem::Requirement
92
+ version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
@@ -114,6 +114,7 @@ files:
114
114
  - bin/setup
115
115
  - expect.gemspec
116
116
  - lib/expect.rb
117
+ - lib/expect/exception/failure.rb
117
118
  - lib/expect/expectation_target.rb
118
119
  - lib/expect/matcher.rb
119
120
  homepage: https://github.com/fixrb/expect