rails_event_store-rspec 0.28.2 → 0.29.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 +4 -4
- data/Makefile +1 -0
- data/lib/rails_event_store/rspec/be_event.rb +11 -6
- data/lib/rails_event_store/rspec/have_applied.rb +17 -6
- data/lib/rails_event_store/rspec/have_published.rb +19 -6
- data/lib/rails_event_store/rspec/matchers.rb +7 -3
- data/lib/rails_event_store/rspec/version.rb +1 -1
- data/rails_event_store-rspec.gemspec +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 70db937a2e115aceb3d4c01978447620202dc5a41b64b5c24672869e09844c77
|
4
|
+
data.tar.gz: 6c6b02698b8c45e31317b18a35369f96667c3562097394846f79c0ea58b2a7dd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0b8244bd6ba6e6fb550f9ee846271dfeb92822d053e63f51b6c118677d38d26569e47987e6be5b027637ce38927794fb4ff7a1309269064e903f343f3927ef5b
|
7
|
+
data.tar.gz: 75bcc8649432de809b2980fe6f2f4373a36881ae853ba7a6fb80d5fa53848fa0ffa9e80bdd5d9144913b6ccc9eeae83b913f6bca837cab67994fe6d25c6d1ef6
|
data/Makefile
CHANGED
@@ -2,6 +2,7 @@ GEM_VERSION = $(shell cat ../RES_VERSION)
|
|
2
2
|
GEM_NAME = rails_event_store-rspec
|
3
3
|
REQUIRE = rails_event_store/rspec
|
4
4
|
IGNORE = RailsEventStore::RSpec::Matchers\#differ \
|
5
|
+
RailsEventStore::RSpec::Matchers\#formatter \
|
5
6
|
RailsEventStore::RSpec::Matchers\#have_published \
|
6
7
|
RailsEventStore::RSpec::Matchers\#have_applied \
|
7
8
|
RailsEventStore::RSpec::Matchers\#be_an_event
|
@@ -114,14 +114,15 @@ module RailsEventStore
|
|
114
114
|
|
115
115
|
include ::RSpec::Matchers::Composable
|
116
116
|
|
117
|
-
def initialize(expected, differ:)
|
118
|
-
@differ
|
119
|
-
@
|
117
|
+
def initialize(expected, differ:, formatter:)
|
118
|
+
@differ = differ
|
119
|
+
@formatter = formatter
|
120
|
+
@expected = expected
|
120
121
|
end
|
121
122
|
|
122
123
|
def matches?(actual)
|
123
124
|
@actual = actual
|
124
|
-
|
125
|
+
matches_kind && matches_data && matches_metadata
|
125
126
|
end
|
126
127
|
|
127
128
|
def with_data(expected_data)
|
@@ -135,7 +136,7 @@ module RailsEventStore
|
|
135
136
|
end
|
136
137
|
|
137
138
|
def failure_message
|
138
|
-
FailureMessage.new(expected, actual.class, expected_data, actual.data, expected_metadata, actual.metadata, differ: differ).to_s
|
139
|
+
FailureMessage.new(expected, actual.class, expected_data, actual.try(:data), expected_metadata, actual.try(:metadata), differ: differ).to_s
|
139
140
|
end
|
140
141
|
|
141
142
|
def failure_message_when_negated
|
@@ -150,6 +151,10 @@ expected: not a kind of #{expected}
|
|
150
151
|
self
|
151
152
|
end
|
152
153
|
|
154
|
+
def description
|
155
|
+
"be event #{formatter.(expected)}"
|
156
|
+
end
|
157
|
+
|
153
158
|
private
|
154
159
|
|
155
160
|
def matches_kind
|
@@ -164,7 +169,7 @@ expected: not a kind of #{expected}
|
|
164
169
|
DataMatcher.new(expected_metadata, strict: strict?).matches?(actual.metadata.to_h)
|
165
170
|
end
|
166
171
|
|
167
|
-
attr_reader :expected_metadata, :expected_data, :actual, :expected, :differ
|
172
|
+
attr_reader :expected_metadata, :expected_data, :actual, :expected, :differ, :formatter
|
168
173
|
|
169
174
|
def strict?
|
170
175
|
@strict
|
@@ -1,10 +1,11 @@
|
|
1
1
|
module RailsEventStore
|
2
2
|
module RSpec
|
3
3
|
class HaveApplied
|
4
|
-
def initialize(mandatory_expected, *optional_expected, differ:)
|
5
|
-
@expected
|
6
|
-
@matcher
|
7
|
-
@differ
|
4
|
+
def initialize(mandatory_expected, *optional_expected, differ:, formatter:)
|
5
|
+
@expected = [mandatory_expected, *optional_expected]
|
6
|
+
@matcher = ::RSpec::Matchers::BuiltIn::Include.new(*expected)
|
7
|
+
@differ = differ
|
8
|
+
@formatter = formatter
|
8
9
|
end
|
9
10
|
|
10
11
|
def matches?(aggregate_root)
|
@@ -27,7 +28,17 @@ module RailsEventStore
|
|
27
28
|
end
|
28
29
|
|
29
30
|
def failure_message
|
30
|
-
|
31
|
+
"expected #{expected} to be applied, diff:" +
|
32
|
+
differ.diff_as_string(expected.to_s, events.to_s)
|
33
|
+
end
|
34
|
+
|
35
|
+
def failure_message_when_negated
|
36
|
+
"expected #{expected} not to be applied, diff:" +
|
37
|
+
differ.diff_as_string(expected.inspect, events.inspect)
|
38
|
+
end
|
39
|
+
|
40
|
+
def description
|
41
|
+
"have applied [%s]" % expected.map { |e| formatter.(e) }.join(', ')
|
31
42
|
end
|
32
43
|
|
33
44
|
private
|
@@ -41,7 +52,7 @@ module RailsEventStore
|
|
41
52
|
end
|
42
53
|
end
|
43
54
|
|
44
|
-
attr_reader :differ, :expected, :events, :count, :matcher
|
55
|
+
attr_reader :formatter, :differ, :expected, :events, :count, :matcher
|
45
56
|
end
|
46
57
|
end
|
47
58
|
end
|
@@ -1,10 +1,11 @@
|
|
1
1
|
module RailsEventStore
|
2
2
|
module RSpec
|
3
3
|
class HavePublished
|
4
|
-
def initialize(mandatory_expected, *optional_expected, differ:)
|
5
|
-
@expected
|
6
|
-
@matcher
|
7
|
-
@differ
|
4
|
+
def initialize(mandatory_expected, *optional_expected, differ:, formatter:)
|
5
|
+
@expected = [mandatory_expected, *optional_expected]
|
6
|
+
@matcher = ::RSpec::Matchers::BuiltIn::Include.new(*expected)
|
7
|
+
@differ = differ
|
8
|
+
@formatter = formatter
|
8
9
|
end
|
9
10
|
|
10
11
|
def matches?(event_store)
|
@@ -33,7 +34,19 @@ module RailsEventStore
|
|
33
34
|
end
|
34
35
|
|
35
36
|
def failure_message
|
36
|
-
|
37
|
+
"expected #{expected} to be published, diff:" +
|
38
|
+
differ.diff_as_string(expected.to_s, events.to_s)
|
39
|
+
end
|
40
|
+
|
41
|
+
def failure_message_when_negated
|
42
|
+
"expected #{expected} not to be published, diff:" +
|
43
|
+
differ.diff_as_string(expected.to_s, events.to_s)
|
44
|
+
end
|
45
|
+
|
46
|
+
def description
|
47
|
+
"have published [%s]" % expected
|
48
|
+
.map { |e| formatter.(e) }
|
49
|
+
.join(', ')
|
37
50
|
end
|
38
51
|
|
39
52
|
private
|
@@ -47,7 +60,7 @@ module RailsEventStore
|
|
47
60
|
end
|
48
61
|
end
|
49
62
|
|
50
|
-
attr_reader :differ, :stream_name, :expected, :count, :events
|
63
|
+
attr_reader :formatter, :differ, :stream_name, :expected, :count, :events
|
51
64
|
end
|
52
65
|
end
|
53
66
|
end
|
@@ -2,22 +2,26 @@ module RailsEventStore
|
|
2
2
|
module RSpec
|
3
3
|
module Matchers
|
4
4
|
def be_an_event(expected)
|
5
|
-
BeEvent.new(expected, differ: differ)
|
5
|
+
BeEvent.new(expected, differ: differ, formatter: formatter)
|
6
6
|
end
|
7
7
|
alias :be_event :be_an_event
|
8
8
|
alias :an_event :be_an_event
|
9
9
|
alias :event :be_an_event
|
10
10
|
|
11
11
|
def have_published(*expected)
|
12
|
-
HavePublished.new(*expected, differ: differ)
|
12
|
+
HavePublished.new(*expected, differ: differ, formatter: formatter)
|
13
13
|
end
|
14
14
|
|
15
15
|
def have_applied(*expected)
|
16
|
-
HaveApplied.new(*expected, differ: differ)
|
16
|
+
HaveApplied.new(*expected, differ: differ, formatter: formatter)
|
17
17
|
end
|
18
18
|
|
19
19
|
private
|
20
20
|
|
21
|
+
def formatter
|
22
|
+
::RSpec::Support::ObjectFormatter.method(:format)
|
23
|
+
end
|
24
|
+
|
21
25
|
def differ
|
22
26
|
::RSpec::Support::Differ.new(color: ::RSpec::Matchers.configuration.color?)
|
23
27
|
end
|
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
|
|
31
31
|
spec.add_development_dependency 'rspec', '~> 3.6'
|
32
32
|
spec.add_development_dependency 'mutant-rspec', '~> 0.8.14'
|
33
33
|
spec.add_development_dependency 'rails', '~> 5.1'
|
34
|
-
spec.add_development_dependency 'rails_event_store', '= 0.
|
34
|
+
spec.add_development_dependency 'rails_event_store', '= 0.29.0'
|
35
35
|
|
36
36
|
spec.add_runtime_dependency 'rspec', '~> 3.0'
|
37
37
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_event_store-rspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.29.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Arkency
|
@@ -86,14 +86,14 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - '='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.
|
89
|
+
version: 0.29.0
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - '='
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.
|
96
|
+
version: 0.29.0
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: rspec
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|