rspec-sleeping_king_studios 1.0.0.rc.2
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 +7 -0
- data/LICENSE +22 -0
- data/README.md +323 -0
- data/lib/rspec/sleeping_king_studios.rb +5 -0
- data/lib/rspec/sleeping_king_studios/matchers.rb +5 -0
- data/lib/rspec/sleeping_king_studios/matchers/active_model.rb +5 -0
- data/lib/rspec/sleeping_king_studios/matchers/active_model/have_errors.rb +219 -0
- data/lib/rspec/sleeping_king_studios/matchers/active_model/have_errors/error_expectation.rb +60 -0
- data/lib/rspec/sleeping_king_studios/matchers/active_model/have_errors/message_expectation.rb +17 -0
- data/lib/rspec/sleeping_king_studios/matchers/active_model/have_errors/require.rb +7 -0
- data/lib/rspec/sleeping_king_studios/matchers/active_model/require.rb +8 -0
- data/lib/rspec/sleeping_king_studios/matchers/base_matcher.rb +43 -0
- data/lib/rspec/sleeping_king_studios/matchers/built_in.rb +5 -0
- data/lib/rspec/sleeping_king_studios/matchers/built_in/be_kind_of.rb +68 -0
- data/lib/rspec/sleeping_king_studios/matchers/built_in/include.rb +92 -0
- data/lib/rspec/sleeping_king_studios/matchers/built_in/require.rb +7 -0
- data/lib/rspec/sleeping_king_studios/matchers/built_in/respond_to.rb +187 -0
- data/lib/rspec/sleeping_king_studios/matchers/core.rb +5 -0
- data/lib/rspec/sleeping_king_studios/matchers/core/be_boolean.rb +41 -0
- data/lib/rspec/sleeping_king_studios/matchers/core/construct.rb +138 -0
- data/lib/rspec/sleeping_king_studios/matchers/core/have_property.rb +84 -0
- data/lib/rspec/sleeping_king_studios/matchers/core/have_reader.rb +76 -0
- data/lib/rspec/sleeping_king_studios/matchers/core/have_writer.rb +101 -0
- data/lib/rspec/sleeping_king_studios/matchers/core/require.rb +7 -0
- data/lib/rspec/sleeping_king_studios/matchers/meta.rb +5 -0
- data/lib/rspec/sleeping_king_studios/matchers/meta/fail_with_actual.rb +142 -0
- data/lib/rspec/sleeping_king_studios/matchers/meta/pass_with_actual.rb +96 -0
- data/lib/rspec/sleeping_king_studios/matchers/meta/require.rb +7 -0
- data/lib/rspec/sleeping_king_studios/matchers/require.rb +12 -0
- data/lib/rspec/sleeping_king_studios/matchers/shared/match_parameters.rb +69 -0
- data/lib/rspec/sleeping_king_studios/matchers/shared/require.rb +7 -0
- data/lib/rspec/sleeping_king_studios/mocks/custom_double.rb +13 -0
- data/lib/rspec/sleeping_king_studios/require.rb +7 -0
- data/lib/rspec/sleeping_king_studios/version.rb +7 -0
- metadata +151 -0
@@ -0,0 +1,142 @@
|
|
1
|
+
# lib/rspec/sleeping_king_studios/matchers/rspec/fail_with_actual.rb
|
2
|
+
|
3
|
+
require 'rspec/sleeping_king_studios/matchers/base_matcher'
|
4
|
+
require 'rspec/sleeping_king_studios/matchers/meta/require'
|
5
|
+
|
6
|
+
module RSpec::SleepingKingStudios::Matchers::Meta
|
7
|
+
# Matcher for testing whether an RSpec matcher will fail with a given actual
|
8
|
+
# object, and return the specified failure message if the matcher is called
|
9
|
+
# via expect#to.
|
10
|
+
#
|
11
|
+
# @note Do not use this matcher with expect#not_to to verify that a matcher
|
12
|
+
# will pass with a given actual object; use the #pass_with_actual matcher
|
13
|
+
# instead.
|
14
|
+
#
|
15
|
+
# @see RSpec::SleepingKingStudios::Matchers::Meta::PassWithActualMatcher
|
16
|
+
#
|
17
|
+
# @since 1.0.0
|
18
|
+
class FailWithActualMatcher < RSpec::SleepingKingStudios::Matchers::BaseMatcher
|
19
|
+
# @param [Object] expected the actual object to check the matcher against
|
20
|
+
def initialize expected
|
21
|
+
super
|
22
|
+
@expected = expected
|
23
|
+
end # method initialize
|
24
|
+
|
25
|
+
# Checks if the matcher evaluates to false with the expected object. If a
|
26
|
+
# message expectation is set, checks the value of
|
27
|
+
# #failure_message_for_should against the expected message.
|
28
|
+
#
|
29
|
+
# @param [Object] actual the RSpec matcher to check; should respond to
|
30
|
+
# :matches? and :failure_message_for_should, as a minimum
|
31
|
+
#
|
32
|
+
# @return [Boolean] true if the matcher evaluates to false and the
|
33
|
+
# matcher's #failure_message_for_should matches the expected message
|
34
|
+
# (if any); otherwise false
|
35
|
+
def matches? actual
|
36
|
+
super
|
37
|
+
return false if @matches = @actual.matches?(@expected)
|
38
|
+
|
39
|
+
if @message.is_a? Regexp
|
40
|
+
!!(@actual.failure_message_for_should =~ @message)
|
41
|
+
elsif @message
|
42
|
+
@actual.failure_message_for_should == @message.to_s
|
43
|
+
else
|
44
|
+
true
|
45
|
+
end # if-elsif-else
|
46
|
+
end # method matches?
|
47
|
+
|
48
|
+
def failure_message_for_should
|
49
|
+
if @matches
|
50
|
+
"expected #{@actual} not to match #{@expected}"
|
51
|
+
else
|
52
|
+
message_text = @message.is_a?(Regexp) ? @message.inspect : @message.to_s
|
53
|
+
|
54
|
+
"expected message#{@message.is_a?(Regexp) ? " matching" : ""}:\n#{
|
55
|
+
message_text.lines.map { |line| "#{" " * 2}#{line}" }.join
|
56
|
+
}\nreceived message:\n#{
|
57
|
+
@actual.failure_message_for_should.lines.map { |line| "#{" " * 2}#{line}" }.join
|
58
|
+
}"
|
59
|
+
end # if-else
|
60
|
+
end # method failure_message_for_should
|
61
|
+
|
62
|
+
# @see BaseMatcher#failure_message_for_should_not
|
63
|
+
def failure_message_for_should_not
|
64
|
+
"failure: testing positive condition with negative matcher\n~> use the :pass_with_actual matcher instead"
|
65
|
+
end # method failure_message_for_should_not
|
66
|
+
|
67
|
+
# The expected failure message for should when the matcher is called via
|
68
|
+
# expect#to.
|
69
|
+
#
|
70
|
+
# @return [String, nil] the expected message if one has been defined;
|
71
|
+
# otherwise nil
|
72
|
+
attr_reader :message
|
73
|
+
|
74
|
+
# Sets up a message expectation. When the matcher is called with the
|
75
|
+
# provided actual object, the matcher's failure_message_for_should
|
76
|
+
# message is compared to the provided message.
|
77
|
+
#
|
78
|
+
# @param [String, Regexp] message the message to compare
|
79
|
+
#
|
80
|
+
# @return [FailWithActualMatcher] self
|
81
|
+
def with_message message
|
82
|
+
@message = message
|
83
|
+
self
|
84
|
+
end # method with_message
|
85
|
+
end # class
|
86
|
+
end # module
|
87
|
+
|
88
|
+
module RSpec::SleepingKingStudios::Matchers
|
89
|
+
# @see RSpec::SleepingKingStudios::Matchers::Meta::FailWithActualMatcher#matches?
|
90
|
+
def fail_with_actual expected
|
91
|
+
Meta::FailWithActualMatcher.new expected
|
92
|
+
end # method fail_with_actual
|
93
|
+
end # module
|
94
|
+
|
95
|
+
=begin
|
96
|
+
RSpec::Matchers.define :fail_with_actual do |actual|
|
97
|
+
match do |matcher|
|
98
|
+
@matcher = matcher
|
99
|
+
@actual = actual
|
100
|
+
|
101
|
+
next false if @matches = @matcher.matches?(@actual)
|
102
|
+
|
103
|
+
text = @matcher.failure_message_for_should
|
104
|
+
if @message.is_a? Regexp
|
105
|
+
!!(text =~ @message)
|
106
|
+
elsif @message
|
107
|
+
text == @message.to_s
|
108
|
+
else
|
109
|
+
true
|
110
|
+
end # if-elsif-else
|
111
|
+
end # match
|
112
|
+
|
113
|
+
failure_message_for_should do
|
114
|
+
if @matches = @matcher.matches?(@actual)
|
115
|
+
"expected #{@matcher} not to match #{@actual}"
|
116
|
+
else
|
117
|
+
message_text = @message.is_a?(Regexp) ? @message.inspect : @message.to_s
|
118
|
+
|
119
|
+
"expected message#{@message.is_a?(Regexp) ? " matching" : ""}:\n#{
|
120
|
+
message_text.lines.map { |line| "#{" " * 2}#{line}" }.join
|
121
|
+
}\nreceived message:\n#{
|
122
|
+
@matcher.failure_message_for_should.lines.map { |line| "#{" " * 2}#{line}" }.join
|
123
|
+
}"
|
124
|
+
end # if-else
|
125
|
+
end # method failure_message_for_should
|
126
|
+
|
127
|
+
failure_message_for_should_not do
|
128
|
+
"failure: testing positive condition with negative matcher\n~> use the :pass_with_actual matcher instead"
|
129
|
+
end # method failure_message_for_should_not
|
130
|
+
|
131
|
+
def message
|
132
|
+
@message
|
133
|
+
end # reader message
|
134
|
+
|
135
|
+
# The text of the tested matcher's :failure_message_for_should, when the
|
136
|
+
# tested matcher correctly fails to match the actual object.
|
137
|
+
def with_message message
|
138
|
+
@message = message
|
139
|
+
self
|
140
|
+
end # method with_message
|
141
|
+
end # matcher pass
|
142
|
+
=end
|
@@ -0,0 +1,96 @@
|
|
1
|
+
# lib/rspec/sleeping_king_studios/matchers/meta/pass_with_actual.rb
|
2
|
+
|
3
|
+
require 'rspec/sleeping_king_studios/matchers/base_matcher'
|
4
|
+
require 'rspec/sleeping_king_studios/matchers/meta/require'
|
5
|
+
|
6
|
+
module RSpec::SleepingKingStudios::Matchers::Meta
|
7
|
+
# Matcher for testing whether an RSpec matcher will pass with a given actual
|
8
|
+
# object, and return the specified failure message if the matcher is called
|
9
|
+
# via expect#not_to.
|
10
|
+
#
|
11
|
+
# @note Do not use this matcher with expect#not_to to verify that a matcher
|
12
|
+
# will fail with a given actual object; use the #fail_with_actual matcher
|
13
|
+
# instead.
|
14
|
+
#
|
15
|
+
# @see RSpec::SleepingKingStudios::Matchers::Meta::FailWithActualMatcher
|
16
|
+
#
|
17
|
+
# @since 1.0.0
|
18
|
+
class PassWithActualMatcher < RSpec::SleepingKingStudios::Matchers::BaseMatcher
|
19
|
+
# @param [Object] expected the actual object to check the matcher against
|
20
|
+
def initialize expected
|
21
|
+
super
|
22
|
+
@expected = expected
|
23
|
+
end # method initialize
|
24
|
+
|
25
|
+
# Checks if the matcher evaluates to true with the expected object. If a
|
26
|
+
# message expectation is set, checks the value of
|
27
|
+
# #failure_message_for_should_not against the expected message.
|
28
|
+
#
|
29
|
+
# @param [Object] actual the RSpec matcher to check; should respond to
|
30
|
+
# :matches? and :failure_message_for_should_not, as a minimum
|
31
|
+
#
|
32
|
+
# @return [Boolean] true if the matcher evaluates to true and the matcher's
|
33
|
+
# #failure_message_for_should_not matches the expected message (if any);
|
34
|
+
# otherwise false
|
35
|
+
def matches? actual
|
36
|
+
super
|
37
|
+
return false unless @matches = @actual.matches?(@expected)
|
38
|
+
|
39
|
+
if @message.is_a? Regexp
|
40
|
+
!!(@actual.failure_message_for_should_not =~ @message)
|
41
|
+
elsif @message
|
42
|
+
@actual.failure_message_for_should_not == @message.to_s
|
43
|
+
else
|
44
|
+
true
|
45
|
+
end # if-elsif-else
|
46
|
+
end # method matches?
|
47
|
+
|
48
|
+
# @see BaseMatcher#failure_message_for_should_not
|
49
|
+
def failure_message_for_should
|
50
|
+
if @matches
|
51
|
+
message_text = @message.is_a?(Regexp) ? @message.inspect : @message.to_s
|
52
|
+
|
53
|
+
"expected message#{@message.is_a?(Regexp) ? " matching" : ""}:\n#{
|
54
|
+
message_text.lines.map { |line| "#{" " * 2}#{line}" }.join
|
55
|
+
}\nreceived message:\n#{
|
56
|
+
@actual.failure_message_for_should_not.lines.map { |line| "#{" " * 2}#{line}" }.join
|
57
|
+
}"
|
58
|
+
else
|
59
|
+
failure_message = @actual.failure_message_for_should
|
60
|
+
failure_message = failure_message.lines.map { |line| "#{" " * 4}#{line}" }.join("\n")
|
61
|
+
"expected #{@actual} to match #{@expected}\n message:\n#{failure_message}"
|
62
|
+
end # if-else
|
63
|
+
end # method failure_message_for_should
|
64
|
+
|
65
|
+
# @see BaseMatcher#failure_message_for_should_not
|
66
|
+
def failure_message_for_should_not
|
67
|
+
"failure: testing negative condition with positive matcher\n~> use the :fail_with_actual matcher instead"
|
68
|
+
end # method failure_message_for_should_not
|
69
|
+
|
70
|
+
# The expected failure message for should_not when the matcher is called
|
71
|
+
# via expect#not_to.
|
72
|
+
#
|
73
|
+
# @return [String, nil] the expected message if one has been defined;
|
74
|
+
# otherwise nil
|
75
|
+
attr_reader :message
|
76
|
+
|
77
|
+
# Sets up a message expectation. When the matcher is called with the
|
78
|
+
# provided actual object, the matcher's failure_message_for_should_not
|
79
|
+
# message is compared to the provided message.
|
80
|
+
#
|
81
|
+
# @param [String, Regexp] message the message to compare
|
82
|
+
#
|
83
|
+
# @return [PassWithActualMatcher] self
|
84
|
+
def with_message message
|
85
|
+
@message = message
|
86
|
+
self
|
87
|
+
end # method with_message
|
88
|
+
end # class
|
89
|
+
end # module
|
90
|
+
|
91
|
+
module RSpec::SleepingKingStudios::Matchers
|
92
|
+
# @see RSpec::SleepingKingStudios::Matchers::Meta::PassWithActualMatcher#matches?
|
93
|
+
def pass_with_actual expected
|
94
|
+
Meta::PassWithActualMatcher.new expected
|
95
|
+
end # method pass_with_actual
|
96
|
+
end # module
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# lib/rspec/sleeping_king_studios/matchers/require.rb
|
2
|
+
|
3
|
+
require 'rspec/sleeping_king_studios/require'
|
4
|
+
|
5
|
+
module RSpec::SleepingKingStudios
|
6
|
+
# Custom matchers for use with RSpec::Expectations.
|
7
|
+
module Matchers; end
|
8
|
+
end # module
|
9
|
+
|
10
|
+
RSpec.configure do |config|
|
11
|
+
config.include RSpec::SleepingKingStudios::Matchers
|
12
|
+
end # configuration
|
@@ -0,0 +1,69 @@
|
|
1
|
+
# lib/rspec/sleeping_king_studios/matchers/shared/parameters_matcher.rb
|
2
|
+
|
3
|
+
require 'rspec/sleeping_king_studios/matchers/shared/require'
|
4
|
+
|
5
|
+
module RSpec::SleepingKingStudios::Matchers::Shared
|
6
|
+
# Helper methods for checking the parameters and keywords (Ruby 2.0 only) of
|
7
|
+
# a method.
|
8
|
+
module MatchParameters
|
9
|
+
# Checks whether the method accepts the specified number or range of
|
10
|
+
# arguments.
|
11
|
+
#
|
12
|
+
# @param [Method] method the method to check
|
13
|
+
# @param [Integer, Range] arity the expected number or range of parameters
|
14
|
+
#
|
15
|
+
# @return [Boolean] true if the method accepts the specified number or both
|
16
|
+
# the specified minimum and maximum number of parameters; otherwise false
|
17
|
+
def check_method_arity method, arity
|
18
|
+
parameters = method.parameters
|
19
|
+
required = parameters.count { |type, | :req == type }
|
20
|
+
optional = parameters.count { |type, | :opt == type }
|
21
|
+
variadic = parameters.count { |type, | :rest == type }
|
22
|
+
|
23
|
+
min, max = arity.is_a?(Range) ?
|
24
|
+
[arity.begin, arity.end] :
|
25
|
+
[arity, arity]
|
26
|
+
|
27
|
+
if min < required
|
28
|
+
return { :not_enough_args => { arity: min, count: required } }
|
29
|
+
elsif 0 == variadic && max > required + optional
|
30
|
+
return { :too_many_args => { arity: max, count: required + optional } }
|
31
|
+
end # if
|
32
|
+
|
33
|
+
nil
|
34
|
+
end # method check_method_arity
|
35
|
+
|
36
|
+
# Checks whether the method accepts the specified keywords.
|
37
|
+
#
|
38
|
+
# @param [Method] method the method to check
|
39
|
+
# @param [Array<String, Symbol>] keywords the expected keywords
|
40
|
+
#
|
41
|
+
# @return [Boolean] true if the method accepts the specified keywords;
|
42
|
+
# otherwise false
|
43
|
+
def check_method_keywords method, keywords
|
44
|
+
return nil unless RUBY_VERSION >= "2.0.0"
|
45
|
+
|
46
|
+
parameters = method.parameters
|
47
|
+
return nil if 0 < parameters.count { |type, _| :keyrest == type }
|
48
|
+
|
49
|
+
mismatch = []
|
50
|
+
keywords.each do |keyword|
|
51
|
+
mismatch << keyword unless parameters.include?([:key, keyword])
|
52
|
+
end # each
|
53
|
+
|
54
|
+
mismatch.empty? ? nil : { :unexpected_keywords => mismatch }
|
55
|
+
end # method check_method_keywords
|
56
|
+
|
57
|
+
# Checks whether the method expects a block.
|
58
|
+
#
|
59
|
+
# @param [Method] method the method to check
|
60
|
+
#
|
61
|
+
# @return [Boolean] true if the method expects a block argument; otherwise
|
62
|
+
# false
|
63
|
+
def check_method_block method
|
64
|
+
0 == method.parameters.count { |type, | :block == type } ? { :expected_block => true } : nil
|
65
|
+
end # method check_method_block
|
66
|
+
|
67
|
+
private :check_method_arity, :check_method_block, :check_method_keywords
|
68
|
+
end # module
|
69
|
+
end # module
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# lib/rspec/sleeping_king_studios/mocks/custom_double.rb
|
2
|
+
|
3
|
+
module RSpec
|
4
|
+
module Mocks
|
5
|
+
module ExampleMethods
|
6
|
+
def custom_double(*args, &block)
|
7
|
+
args << {} unless Hash === args.last
|
8
|
+
args.last[:__declared_as] = "Custom Double"
|
9
|
+
Class.new(&block).new.tap { |obj| RSpec::Mocks::TestDouble.extend_onto obj, *args }
|
10
|
+
end # method
|
11
|
+
end # module
|
12
|
+
end # module
|
13
|
+
end # module
|
metadata
ADDED
@@ -0,0 +1,151 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rspec-sleeping_king_studios
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0.rc.2
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Rob "Merlin" Smith
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2013-02-28 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rspec
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '2.14'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '2.14'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: activemodel
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '3.0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '3.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: factory_girl
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '4.2'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '4.2'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: fuubar
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: pry
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '>='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - '>='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
description: |2
|
84
|
+
A collection of RSpec patches and custom matchers. The features can be
|
85
|
+
included individually or by category. For more information, check out the
|
86
|
+
README.
|
87
|
+
email:
|
88
|
+
- merlin@sleepingkingstudios.com
|
89
|
+
executables: []
|
90
|
+
extensions: []
|
91
|
+
extra_rdoc_files: []
|
92
|
+
files:
|
93
|
+
- lib/rspec/sleeping_king_studios/matchers/active_model/have_errors/error_expectation.rb
|
94
|
+
- lib/rspec/sleeping_king_studios/matchers/active_model/have_errors/message_expectation.rb
|
95
|
+
- lib/rspec/sleeping_king_studios/matchers/active_model/have_errors/require.rb
|
96
|
+
- lib/rspec/sleeping_king_studios/matchers/active_model/have_errors.rb
|
97
|
+
- lib/rspec/sleeping_king_studios/matchers/active_model/require.rb
|
98
|
+
- lib/rspec/sleeping_king_studios/matchers/active_model.rb
|
99
|
+
- lib/rspec/sleeping_king_studios/matchers/base_matcher.rb
|
100
|
+
- lib/rspec/sleeping_king_studios/matchers/built_in/be_kind_of.rb
|
101
|
+
- lib/rspec/sleeping_king_studios/matchers/built_in/include.rb
|
102
|
+
- lib/rspec/sleeping_king_studios/matchers/built_in/require.rb
|
103
|
+
- lib/rspec/sleeping_king_studios/matchers/built_in/respond_to.rb
|
104
|
+
- lib/rspec/sleeping_king_studios/matchers/built_in.rb
|
105
|
+
- lib/rspec/sleeping_king_studios/matchers/core/be_boolean.rb
|
106
|
+
- lib/rspec/sleeping_king_studios/matchers/core/construct.rb
|
107
|
+
- lib/rspec/sleeping_king_studios/matchers/core/have_property.rb
|
108
|
+
- lib/rspec/sleeping_king_studios/matchers/core/have_reader.rb
|
109
|
+
- lib/rspec/sleeping_king_studios/matchers/core/have_writer.rb
|
110
|
+
- lib/rspec/sleeping_king_studios/matchers/core/require.rb
|
111
|
+
- lib/rspec/sleeping_king_studios/matchers/core.rb
|
112
|
+
- lib/rspec/sleeping_king_studios/matchers/meta/fail_with_actual.rb
|
113
|
+
- lib/rspec/sleeping_king_studios/matchers/meta/pass_with_actual.rb
|
114
|
+
- lib/rspec/sleeping_king_studios/matchers/meta/require.rb
|
115
|
+
- lib/rspec/sleeping_king_studios/matchers/meta.rb
|
116
|
+
- lib/rspec/sleeping_king_studios/matchers/require.rb
|
117
|
+
- lib/rspec/sleeping_king_studios/matchers/shared/match_parameters.rb
|
118
|
+
- lib/rspec/sleeping_king_studios/matchers/shared/require.rb
|
119
|
+
- lib/rspec/sleeping_king_studios/matchers.rb
|
120
|
+
- lib/rspec/sleeping_king_studios/mocks/custom_double.rb
|
121
|
+
- lib/rspec/sleeping_king_studios/require.rb
|
122
|
+
- lib/rspec/sleeping_king_studios/version.rb
|
123
|
+
- lib/rspec/sleeping_king_studios.rb
|
124
|
+
- LICENSE
|
125
|
+
- README.md
|
126
|
+
homepage: http://sleepingkingstudios.com
|
127
|
+
licenses:
|
128
|
+
- MIT
|
129
|
+
metadata: {}
|
130
|
+
post_install_message:
|
131
|
+
rdoc_options: []
|
132
|
+
require_paths:
|
133
|
+
- lib
|
134
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - '>='
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
140
|
+
requirements:
|
141
|
+
- - '>'
|
142
|
+
- !ruby/object:Gem::Version
|
143
|
+
version: 1.3.1
|
144
|
+
requirements: []
|
145
|
+
rubyforge_project:
|
146
|
+
rubygems_version: 2.0.3
|
147
|
+
signing_key:
|
148
|
+
specification_version: 4
|
149
|
+
summary: A collection of RSpec patches and custom matchers.
|
150
|
+
test_files: []
|
151
|
+
has_rdoc:
|