super_diff 0.3.0 → 0.5.1

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.
Files changed (189) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +104 -73
  3. data/lib/super_diff.rb +20 -11
  4. data/lib/super_diff/active_record.rb +21 -23
  5. data/lib/super_diff/active_record/diff_formatters/active_record_relation.rb +3 -3
  6. data/lib/super_diff/active_record/differs/active_record_relation.rb +3 -5
  7. data/lib/super_diff/active_record/monkey_patches.rb +9 -0
  8. data/lib/super_diff/active_record/object_inspection/inspectors/active_record_model.rb +32 -22
  9. data/lib/super_diff/active_record/object_inspection/inspectors/active_record_relation.rb +17 -7
  10. data/lib/super_diff/active_record/operation_tree_builders.rb +14 -0
  11. data/lib/super_diff/active_record/{operational_sequencers → operation_tree_builders}/active_record_model.rb +2 -2
  12. data/lib/super_diff/active_record/{operational_sequencers → operation_tree_builders}/active_record_relation.rb +4 -4
  13. data/lib/super_diff/active_record/{operation_sequences.rb → operation_trees.rb} +2 -2
  14. data/lib/super_diff/active_record/{operation_sequences → operation_trees}/active_record_relation.rb +2 -2
  15. data/lib/super_diff/active_support.rb +16 -19
  16. data/lib/super_diff/active_support/diff_formatters/hash_with_indifferent_access.rb +3 -3
  17. data/lib/super_diff/active_support/differs/hash_with_indifferent_access.rb +3 -5
  18. data/lib/super_diff/active_support/object_inspection/inspectors/hash_with_indifferent_access.rb +17 -7
  19. data/lib/super_diff/active_support/operation_tree_builders.rb +10 -0
  20. data/lib/super_diff/active_support/{operational_sequencers → operation_tree_builders}/hash_with_indifferent_access.rb +2 -2
  21. data/lib/super_diff/active_support/{operation_sequences.rb → operation_trees.rb} +2 -2
  22. data/lib/super_diff/active_support/{operation_sequences → operation_trees}/hash_with_indifferent_access.rb +2 -2
  23. data/lib/super_diff/configuration.rb +60 -0
  24. data/lib/super_diff/csi.rb +4 -0
  25. data/lib/super_diff/diff_formatters.rb +3 -3
  26. data/lib/super_diff/diff_formatters/array.rb +3 -3
  27. data/lib/super_diff/diff_formatters/base.rb +3 -2
  28. data/lib/super_diff/diff_formatters/collection.rb +2 -2
  29. data/lib/super_diff/diff_formatters/custom_object.rb +3 -3
  30. data/lib/super_diff/diff_formatters/default_object.rb +6 -8
  31. data/lib/super_diff/diff_formatters/defaults.rb +10 -0
  32. data/lib/super_diff/diff_formatters/hash.rb +3 -3
  33. data/lib/super_diff/diff_formatters/main.rb +41 -0
  34. data/lib/super_diff/diff_formatters/multiline_string.rb +3 -3
  35. data/lib/super_diff/differs.rb +4 -11
  36. data/lib/super_diff/differs/array.rb +2 -11
  37. data/lib/super_diff/differs/base.rb +20 -3
  38. data/lib/super_diff/differs/custom_object.rb +2 -11
  39. data/lib/super_diff/differs/default_object.rb +2 -8
  40. data/lib/super_diff/differs/defaults.rb +12 -0
  41. data/lib/super_diff/differs/hash.rb +2 -11
  42. data/lib/super_diff/differs/main.rb +48 -0
  43. data/lib/super_diff/differs/multiline_string.rb +2 -14
  44. data/lib/super_diff/differs/time_like.rb +15 -0
  45. data/lib/super_diff/equality_matchers.rb +3 -9
  46. data/lib/super_diff/equality_matchers/array.rb +1 -7
  47. data/lib/super_diff/equality_matchers/base.rb +1 -1
  48. data/lib/super_diff/equality_matchers/default.rb +2 -8
  49. data/lib/super_diff/equality_matchers/defaults.rb +12 -0
  50. data/lib/super_diff/equality_matchers/hash.rb +1 -7
  51. data/lib/super_diff/equality_matchers/main.rb +21 -0
  52. data/lib/super_diff/equality_matchers/multiline_string.rb +1 -7
  53. data/lib/super_diff/errors.rb +16 -0
  54. data/lib/super_diff/errors/no_diff_formatter_available_error.rb +21 -0
  55. data/lib/super_diff/errors/no_differ_available_error.rb +24 -0
  56. data/lib/super_diff/errors/no_operational_sequencer_available_error.rb +22 -0
  57. data/lib/super_diff/implementation_checks.rb +19 -0
  58. data/lib/super_diff/object_inspection.rb +1 -10
  59. data/lib/super_diff/object_inspection/inspection_tree.rb +6 -2
  60. data/lib/super_diff/object_inspection/inspectors.rb +5 -1
  61. data/lib/super_diff/object_inspection/inspectors/array.rb +20 -10
  62. data/lib/super_diff/object_inspection/inspectors/base.rb +36 -0
  63. data/lib/super_diff/object_inspection/inspectors/custom_object.rb +24 -14
  64. data/lib/super_diff/object_inspection/inspectors/default_object.rb +44 -30
  65. data/lib/super_diff/object_inspection/inspectors/defaults.rb +15 -0
  66. data/lib/super_diff/object_inspection/inspectors/hash.rb +20 -10
  67. data/lib/super_diff/object_inspection/inspectors/main.rb +35 -0
  68. data/lib/super_diff/object_inspection/inspectors/primitive.rb +20 -5
  69. data/lib/super_diff/object_inspection/inspectors/string.rb +15 -5
  70. data/lib/super_diff/object_inspection/inspectors/time_like.rb +23 -0
  71. data/lib/super_diff/object_inspection/nodes/inspection.rb +9 -2
  72. data/lib/super_diff/operation_tree_builders.rb +18 -0
  73. data/lib/super_diff/{operational_sequencers → operation_tree_builders}/array.rb +38 -59
  74. data/lib/super_diff/operation_tree_builders/base.rb +98 -0
  75. data/lib/super_diff/{operational_sequencers → operation_tree_builders}/custom_object.rb +3 -3
  76. data/lib/super_diff/{operational_sequencers → operation_tree_builders}/default_object.rb +8 -3
  77. data/lib/super_diff/operation_tree_builders/defaults.rb +5 -0
  78. data/lib/super_diff/operation_tree_builders/hash.rb +226 -0
  79. data/lib/super_diff/operation_tree_builders/main.rb +42 -0
  80. data/lib/super_diff/{operational_sequencers → operation_tree_builders}/multiline_string.rb +3 -3
  81. data/lib/super_diff/operation_tree_builders/time_like.rb +34 -0
  82. data/lib/super_diff/operation_trees.rb +13 -0
  83. data/lib/super_diff/{operation_sequences → operation_trees}/array.rb +5 -1
  84. data/lib/super_diff/operation_trees/base.rb +31 -0
  85. data/lib/super_diff/{operation_sequences → operation_trees}/custom_object.rb +5 -1
  86. data/lib/super_diff/{operation_sequences → operation_trees}/default_object.rb +10 -8
  87. data/lib/super_diff/operation_trees/defaults.rb +5 -0
  88. data/lib/super_diff/{operation_sequences → operation_trees}/hash.rb +5 -1
  89. data/lib/super_diff/operation_trees/main.rb +35 -0
  90. data/lib/super_diff/operation_trees/multiline_string.rb +18 -0
  91. data/lib/super_diff/operations/unary_operation.rb +3 -0
  92. data/lib/super_diff/rspec.rb +54 -22
  93. data/lib/super_diff/rspec/augmented_matcher.rb +1 -1
  94. data/lib/super_diff/rspec/differ.rb +2 -17
  95. data/lib/super_diff/rspec/differs.rb +9 -3
  96. data/lib/super_diff/rspec/differs/collection_containing_exactly.rb +3 -8
  97. data/lib/super_diff/rspec/differs/collection_including.rb +18 -0
  98. data/lib/super_diff/rspec/differs/hash_including.rb +18 -0
  99. data/lib/super_diff/rspec/differs/object_having_attributes.rb +17 -0
  100. data/lib/super_diff/rspec/matcher_text_builders.rb +4 -0
  101. data/lib/super_diff/rspec/matcher_text_builders/be_predicate.rb +26 -7
  102. data/lib/super_diff/rspec/matcher_text_builders/have_predicate.rb +61 -0
  103. data/lib/super_diff/rspec/matcher_text_builders/match.rb +1 -1
  104. data/lib/super_diff/rspec/matcher_text_builders/raise_error.rb +13 -1
  105. data/lib/super_diff/rspec/matcher_text_builders/respond_to.rb +1 -1
  106. data/lib/super_diff/rspec/matcher_text_template.rb +1 -1
  107. data/lib/super_diff/rspec/monkey_patches.rb +226 -115
  108. data/lib/super_diff/rspec/object_inspection.rb +0 -1
  109. data/lib/super_diff/rspec/object_inspection/inspectors.rb +22 -6
  110. data/lib/super_diff/rspec/object_inspection/inspectors/collection_containing_exactly.rb +17 -8
  111. data/lib/super_diff/rspec/object_inspection/inspectors/collection_including.rb +28 -0
  112. data/lib/super_diff/rspec/object_inspection/inspectors/hash_including.rb +31 -0
  113. data/lib/super_diff/rspec/object_inspection/inspectors/instance_of.rb +23 -0
  114. data/lib/super_diff/rspec/object_inspection/inspectors/kind_of.rb +23 -0
  115. data/lib/super_diff/rspec/object_inspection/inspectors/object_having_attributes.rb +31 -0
  116. data/lib/super_diff/rspec/object_inspection/inspectors/primitive.rb +13 -0
  117. data/lib/super_diff/rspec/object_inspection/inspectors/value_within.rb +29 -0
  118. data/lib/super_diff/rspec/operation_tree_builders.rb +22 -0
  119. data/lib/super_diff/rspec/{operational_sequencers → operation_tree_builders}/collection_containing_exactly.rb +6 -6
  120. data/lib/super_diff/rspec/{operational_sequencers/partial_array.rb → operation_tree_builders/collection_including.rb} +4 -3
  121. data/lib/super_diff/rspec/operation_tree_builders/hash_including.rb +25 -0
  122. data/lib/super_diff/rspec/{operational_sequencers/partial_object.rb → operation_tree_builders/object_having_attributes.rb} +5 -11
  123. data/lib/super_diff/version.rb +1 -1
  124. data/spec/examples.txt +5 -350
  125. data/spec/integration/rails/active_record_spec.rb +1 -1
  126. data/spec/integration/rails/hash_with_indifferent_access_spec.rb +1 -1
  127. data/spec/integration/rspec/be_predicate_matcher_spec.rb +111 -59
  128. data/spec/integration/rspec/eq_matcher_spec.rb +1 -1
  129. data/spec/integration/rspec/have_attributes_matcher_spec.rb +354 -227
  130. data/spec/integration/rspec/have_predicate_matcher_spec.rb +484 -0
  131. data/spec/integration/rspec/include_matcher_spec.rb +2 -2
  132. data/spec/integration/rspec/match_array_matcher_spec.rb +372 -0
  133. data/spec/integration/rspec/match_matcher_spec.rb +8 -8
  134. data/spec/integration/rspec/raise_error_matcher_spec.rb +605 -226
  135. data/spec/integration/rspec/third_party_matcher_spec.rb +241 -0
  136. data/spec/integration/rspec/unhandled_errors_spec.rb +110 -58
  137. data/spec/spec_helper.rb +18 -7
  138. data/spec/support/command_runner.rb +3 -0
  139. data/spec/support/integration/helpers.rb +14 -90
  140. data/spec/support/integration/matchers.rb +143 -0
  141. data/spec/support/integration/matchers/produce_output_when_run_matcher.rb +14 -29
  142. data/spec/support/integration/test_programs/base.rb +120 -0
  143. data/spec/support/integration/test_programs/plain.rb +13 -0
  144. data/spec/support/integration/test_programs/rspec_active_record.rb +17 -0
  145. data/spec/support/integration/test_programs/rspec_rails.rb +17 -0
  146. data/spec/support/models/active_record/person.rb +4 -11
  147. data/spec/support/models/active_record/query.rb +15 -0
  148. data/spec/support/models/active_record/shipping_address.rb +10 -14
  149. data/spec/support/object_id.rb +27 -0
  150. data/spec/support/ruby_versions.rb +4 -0
  151. data/spec/support/shared_examples/active_record.rb +71 -0
  152. data/spec/support/shared_examples/hash_with_indifferent_access.rb +724 -208
  153. data/spec/unit/{equality_matcher_spec.rb → equality_matchers/main_spec.rb} +165 -9
  154. data/spec/unit/object_inspection_spec.rb +94 -18
  155. data/spec/unit/rspec/matchers/have_predicate_spec.rb +21 -0
  156. data/spec/unit/rspec/matchers/match_array_spec.rb +11 -0
  157. data/spec/unit/rspec/matchers/raise_error_spec.rb +16 -0
  158. data/super_diff.gemspec +4 -6
  159. metadata +99 -82
  160. data/lib/super_diff/active_record/object_inspection/map_extension.rb +0 -18
  161. data/lib/super_diff/active_record/operational_sequencers.rb +0 -14
  162. data/lib/super_diff/active_support/object_inspection/map_extension.rb +0 -15
  163. data/lib/super_diff/active_support/operational_sequencers.rb +0 -10
  164. data/lib/super_diff/diff_formatter.rb +0 -32
  165. data/lib/super_diff/differ.rb +0 -51
  166. data/lib/super_diff/differs/time.rb +0 -24
  167. data/lib/super_diff/equality_matcher.rb +0 -32
  168. data/lib/super_diff/no_differ_available_error.rb +0 -22
  169. data/lib/super_diff/no_operational_sequencer_available_error.rb +0 -20
  170. data/lib/super_diff/object_inspection/inspector.rb +0 -27
  171. data/lib/super_diff/object_inspection/inspectors/time.rb +0 -13
  172. data/lib/super_diff/object_inspection/map.rb +0 -30
  173. data/lib/super_diff/operation_sequences.rb +0 -9
  174. data/lib/super_diff/operation_sequences/base.rb +0 -11
  175. data/lib/super_diff/operational_sequencer.rb +0 -48
  176. data/lib/super_diff/operational_sequencers.rb +0 -17
  177. data/lib/super_diff/operational_sequencers/base.rb +0 -89
  178. data/lib/super_diff/operational_sequencers/hash.rb +0 -85
  179. data/lib/super_diff/operational_sequencers/time_like.rb +0 -30
  180. data/lib/super_diff/rspec/configuration.rb +0 -31
  181. data/lib/super_diff/rspec/differs/partial_array.rb +0 -22
  182. data/lib/super_diff/rspec/differs/partial_hash.rb +0 -22
  183. data/lib/super_diff/rspec/differs/partial_object.rb +0 -22
  184. data/lib/super_diff/rspec/object_inspection/inspectors/partial_array.rb +0 -22
  185. data/lib/super_diff/rspec/object_inspection/inspectors/partial_hash.rb +0 -21
  186. data/lib/super_diff/rspec/object_inspection/inspectors/partial_object.rb +0 -21
  187. data/lib/super_diff/rspec/object_inspection/map_extension.rb +0 -23
  188. data/lib/super_diff/rspec/operational_sequencers.rb +0 -22
  189. data/lib/super_diff/rspec/operational_sequencers/partial_hash.rb +0 -32
@@ -2,7 +2,6 @@ module SuperDiff
2
2
  module RSpec
3
3
  module ObjectInspection
4
4
  autoload :Inspectors, "super_diff/rspec/object_inspection/inspectors"
5
- autoload :MapExtension, "super_diff/rspec/object_inspection/map_extension"
6
5
  end
7
6
  end
8
7
  end
@@ -7,16 +7,32 @@ module SuperDiff
7
7
  "super_diff/rspec/object_inspection/inspectors/collection_containing_exactly",
8
8
  )
9
9
  autoload(
10
- :PartialArray,
11
- "super_diff/rspec/object_inspection/inspectors/partial_array",
10
+ :CollectionIncluding,
11
+ "super_diff/rspec/object_inspection/inspectors/collection_including",
12
12
  )
13
13
  autoload(
14
- :PartialHash,
15
- "super_diff/rspec/object_inspection/inspectors/partial_hash",
14
+ :HashIncluding,
15
+ "super_diff/rspec/object_inspection/inspectors/hash_including",
16
16
  )
17
17
  autoload(
18
- :PartialObject,
19
- "super_diff/rspec/object_inspection/inspectors/partial_object",
18
+ :InstanceOf,
19
+ "super_diff/rspec/object_inspection/inspectors/instance_of",
20
+ )
21
+ autoload(
22
+ :KindOf,
23
+ "super_diff/rspec/object_inspection/inspectors/kind_of",
24
+ )
25
+ autoload(
26
+ :ObjectHavingAttributes,
27
+ "super_diff/rspec/object_inspection/inspectors/object_having_attributes",
28
+ )
29
+ autoload(
30
+ :Primitive,
31
+ "super_diff/rspec/object_inspection/inspectors/primitive",
32
+ )
33
+ autoload(
34
+ :ValueWithin,
35
+ "super_diff/rspec/object_inspection/inspectors/value_within",
20
36
  )
21
37
  end
22
38
  end
@@ -2,17 +2,26 @@ module SuperDiff
2
2
  module RSpec
3
3
  module ObjectInspection
4
4
  module Inspectors
5
- CollectionContainingExactly =
6
- SuperDiff::ObjectInspection::InspectionTree.new do
7
- add_text "#<a collection containing exactly ("
5
+ class CollectionContainingExactly < SuperDiff::ObjectInspection::Inspectors::Base
6
+ def self.applies_to?(value)
7
+ SuperDiff::RSpec.a_collection_containing_exactly_something?(value)
8
+ end
8
9
 
9
- nested do |aliased_matcher|
10
- insert_array_inspection_of(aliased_matcher.expected)
11
- end
10
+ protected
11
+
12
+ def inspection_tree
13
+ SuperDiff::ObjectInspection::InspectionTree.new do
14
+ add_text "#<a collection containing exactly ("
12
15
 
13
- add_break
14
- add_text ")>"
16
+ nested do |aliased_matcher|
17
+ insert_array_inspection_of(aliased_matcher.expected)
18
+ end
19
+
20
+ add_break
21
+ add_text ")>"
22
+ end
15
23
  end
24
+ end
16
25
  end
17
26
  end
18
27
  end
@@ -0,0 +1,28 @@
1
+ module SuperDiff
2
+ module RSpec
3
+ module ObjectInspection
4
+ module Inspectors
5
+ class CollectionIncluding < SuperDiff::ObjectInspection::Inspectors::Base
6
+ def self.applies_to?(value)
7
+ SuperDiff::RSpec.a_collection_including_something?(value)
8
+ end
9
+
10
+ protected
11
+
12
+ def inspection_tree
13
+ SuperDiff::ObjectInspection::InspectionTree.new do
14
+ add_text "#<a collection including ("
15
+
16
+ nested do |aliased_matcher|
17
+ insert_array_inspection_of(aliased_matcher.expecteds)
18
+ end
19
+
20
+ add_break
21
+ add_text ")>"
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,31 @@
1
+ module SuperDiff
2
+ module RSpec
3
+ module ObjectInspection
4
+ module Inspectors
5
+ class HashIncluding < SuperDiff::ObjectInspection::Inspectors::Base
6
+ def self.applies_to?(value)
7
+ SuperDiff::RSpec.a_hash_including_something?(value)
8
+ end
9
+
10
+ protected
11
+
12
+ def inspection_tree
13
+ SuperDiff::ObjectInspection::InspectionTree.new do
14
+ add_text "#<a hash including ("
15
+
16
+ nested do |aliased_matcher|
17
+ insert_hash_inspection_of(
18
+ aliased_matcher.expecteds.first,
19
+ initial_break: nil,
20
+ )
21
+ end
22
+
23
+ add_break
24
+ add_text ")>"
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,23 @@
1
+ module SuperDiff
2
+ module RSpec
3
+ module ObjectInspection
4
+ module Inspectors
5
+ class InstanceOf < SuperDiff::ObjectInspection::Inspectors::Base
6
+ def self.applies_to?(value)
7
+ SuperDiff::RSpec.an_instance_of_something?(value)
8
+ end
9
+
10
+ protected
11
+
12
+ def inspection_tree
13
+ SuperDiff::ObjectInspection::InspectionTree.new do
14
+ add_text do |aliased_matcher|
15
+ "#<an instance of #{aliased_matcher.expected}>"
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,23 @@
1
+ module SuperDiff
2
+ module RSpec
3
+ module ObjectInspection
4
+ module Inspectors
5
+ class KindOf < SuperDiff::ObjectInspection::Inspectors::Base
6
+ def self.applies_to?(value)
7
+ SuperDiff::RSpec.a_kind_of_something?(value)
8
+ end
9
+
10
+ protected
11
+
12
+ def inspection_tree
13
+ SuperDiff::ObjectInspection::InspectionTree.new do
14
+ add_text do |aliased_matcher|
15
+ "#<a kind of #{aliased_matcher.expected}>"
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,31 @@
1
+ module SuperDiff
2
+ module RSpec
3
+ module ObjectInspection
4
+ module Inspectors
5
+ class ObjectHavingAttributes < SuperDiff::ObjectInspection::Inspectors::Base
6
+ def self.applies_to?(value)
7
+ SuperDiff::RSpec.an_object_having_some_attributes?(value)
8
+ end
9
+
10
+ protected
11
+
12
+ def inspection_tree
13
+ SuperDiff::ObjectInspection::InspectionTree.new do
14
+ add_text "#<an object having attributes ("
15
+
16
+ nested do |aliased_matcher|
17
+ insert_hash_inspection_of(
18
+ aliased_matcher.expected,
19
+ initial_break: nil,
20
+ )
21
+ end
22
+
23
+ add_break
24
+ add_text ")>"
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,13 @@
1
+ module SuperDiff
2
+ module RSpec
3
+ module ObjectInspection
4
+ module Inspectors
5
+ class Primitive < SuperDiff::ObjectInspection::Inspectors::Primitive
6
+ def self.applies_to?(value)
7
+ super || value.is_a?(::RSpec::Mocks::Double)
8
+ end
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,29 @@
1
+ module SuperDiff
2
+ module RSpec
3
+ module ObjectInspection
4
+ module Inspectors
5
+ class ValueWithin < SuperDiff::ObjectInspection::Inspectors::Base
6
+ def self.applies_to?(value)
7
+ SuperDiff::RSpec.a_value_within_something?(value)
8
+ end
9
+
10
+ protected
11
+
12
+ def inspection_tree
13
+ SuperDiff::ObjectInspection::InspectionTree.new do
14
+ add_text "#<a value within "
15
+
16
+ add_inspection_of do |aliased_matcher|
17
+ aliased_matcher.base_matcher.instance_variable_get("@delta")
18
+ end
19
+
20
+ add_text " of "
21
+ add_inspection_of(&:expected)
22
+ add_text ">"
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,22 @@
1
+ module SuperDiff
2
+ module RSpec
3
+ module OperationTreeBuilders
4
+ autoload(
5
+ :CollectionContainingExactly,
6
+ "super_diff/rspec/operation_tree_builders/collection_containing_exactly",
7
+ )
8
+ autoload(
9
+ :CollectionIncluding,
10
+ "super_diff/rspec/operation_tree_builders/collection_including",
11
+ )
12
+ autoload(
13
+ :HashIncluding,
14
+ "super_diff/rspec/operation_tree_builders/hash_including",
15
+ )
16
+ autoload(
17
+ :ObjectHavingAttributes,
18
+ "super_diff/rspec/operation_tree_builders/object_having_attributes",
19
+ )
20
+ end
21
+ end
22
+ end
@@ -1,13 +1,13 @@
1
1
  module SuperDiff
2
2
  module RSpec
3
- module OperationalSequencers
4
- class CollectionContainingExactly < SuperDiff::OperationalSequencers::Base
3
+ module OperationTreeBuilders
4
+ class CollectionContainingExactly < SuperDiff::OperationTreeBuilders::Base
5
5
  def self.applies_to?(expected, actual)
6
- SuperDiff::RSpec.collection_containing_exactly?(expected) &&
6
+ SuperDiff::RSpec.a_collection_containing_exactly_something?(expected) &&
7
7
  actual.is_a?(::Array)
8
8
  end
9
9
 
10
- def initialize(actual:, **rest)
10
+ def initialize(actual:, **)
11
11
  super
12
12
  populate_pairings_maximizer_in_expected_with(actual)
13
13
  end
@@ -28,8 +28,8 @@ module SuperDiff
28
28
  operations
29
29
  end
30
30
 
31
- def build_operation_sequencer
32
- OperationSequences::Array.new([])
31
+ def build_operation_tree
32
+ OperationTrees::Array.new([])
33
33
  end
34
34
 
35
35
  private
@@ -1,9 +1,10 @@
1
1
  module SuperDiff
2
2
  module RSpec
3
- module OperationalSequencers
4
- class PartialArray < SuperDiff::OperationalSequencers::Array
3
+ module OperationTreeBuilders
4
+ class CollectionIncluding < SuperDiff::OperationTreeBuilders::Array
5
5
  def self.applies_to?(expected, actual)
6
- SuperDiff::RSpec.partial_array?(expected) && actual.is_a?(::Array)
6
+ SuperDiff::RSpec.a_collection_including_something?(expected) &&
7
+ actual.is_a?(::Array)
7
8
  end
8
9
 
9
10
  def initialize(expected:, actual:, **rest)
@@ -0,0 +1,25 @@
1
+ module SuperDiff
2
+ module RSpec
3
+ module OperationTreeBuilders
4
+ class HashIncluding < SuperDiff::OperationTreeBuilders::Hash
5
+ def self.applies_to?(expected, actual)
6
+ SuperDiff::RSpec.a_hash_including_something?(expected) &&
7
+ actual.is_a?(::Hash)
8
+ end
9
+
10
+ def initialize(expected:, **rest)
11
+ super(expected: expected.expecteds.first, **rest)
12
+ end
13
+
14
+ private
15
+
16
+ def should_add_noop_operation?(key)
17
+ !expected.include?(key) || (
18
+ actual.include?(key) &&
19
+ expected[key] == actual[key]
20
+ )
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -1,24 +1,18 @@
1
1
  module SuperDiff
2
2
  module RSpec
3
- module OperationalSequencers
4
- class PartialObject < SuperDiff::OperationalSequencers::DefaultObject
3
+ module OperationTreeBuilders
4
+ class ObjectHavingAttributes < SuperDiff::OperationTreeBuilders::DefaultObject
5
5
  def self.applies_to?(expected, _actual)
6
- SuperDiff::RSpec.partial_object?(expected)
6
+ SuperDiff::RSpec.an_object_having_some_attributes?(expected)
7
7
  end
8
8
 
9
9
  protected
10
10
 
11
- def build_operation_sequencer
12
- # TODO: Test this
13
- if actual.respond_to?(:attributes_for_super_diff)
14
- OperationSequences::CustomObject.new([], value_class: actual.class)
15
- else
16
- OperationSequences::DefaultObject.new([], value_class: actual.class)
17
- end
11
+ def build_operation_tree
12
+ find_operation_tree_for(actual)
18
13
  end
19
14
 
20
15
  def attribute_names
21
- # TODO: Test this
22
16
  if actual.respond_to?(:attributes_for_super_diff)
23
17
  actual.attributes_for_super_diff.keys | expected.expected.keys
24
18
  else
@@ -1,3 +1,3 @@
1
1
  module SuperDiff
2
- VERSION = "0.3.0".freeze
2
+ VERSION = "0.5.1".freeze
3
3
  end
@@ -1,350 +1,5 @@
1
- example_id | status | run_time |
2
- ------------------------------------------------------------------------ | ------- | --------------- |
3
- ./spec/integration/rails/active_record_spec.rb[1:1:1:1:1] | passed | 2.15 seconds |
4
- ./spec/integration/rails/active_record_spec.rb[1:1:1:2:1] | passed | 2.19 seconds |
5
- ./spec/integration/rails/active_record_spec.rb[1:1:1:3:1] | passed | 2.13 seconds |
6
- ./spec/integration/rails/active_record_spec.rb[1:1:1:4:1] | passed | 2.16 seconds |
7
- ./spec/integration/rails/active_record_spec.rb[1:1:1:5:1] | passed | 2.14 seconds |
8
- ./spec/integration/rails/active_record_spec.rb[1:1:1:6:1] | passed | 2.15 seconds |
9
- ./spec/integration/rails/active_record_spec.rb[1:2:1:1:1] | passed | 2.2 seconds |
10
- ./spec/integration/rails/active_record_spec.rb[1:2:1:2:1] | passed | 2.11 seconds |
11
- ./spec/integration/rails/active_record_spec.rb[1:2:1:3:1] | passed | 2.08 seconds |
12
- ./spec/integration/rails/active_record_spec.rb[1:2:1:4:1] | passed | 2.14 seconds |
13
- ./spec/integration/rails/active_record_spec.rb[1:2:1:5:1] | passed | 2.24 seconds |
14
- ./spec/integration/rails/active_record_spec.rb[1:2:1:6:1] | passed | 2.14 seconds |
15
- ./spec/integration/rails/hash_with_indifferent_access_spec.rb[1:1:1:1:1] | passed | 2.1 seconds |
16
- ./spec/integration/rails/hash_with_indifferent_access_spec.rb[1:1:1:2:1] | passed | 2.12 seconds |
17
- ./spec/integration/rails/hash_with_indifferent_access_spec.rb[1:1:2:1:1] | passed | 2.15 seconds |
18
- ./spec/integration/rails/hash_with_indifferent_access_spec.rb[1:1:2:2:1] | passed | 2.1 seconds |
19
- ./spec/integration/rails/hash_with_indifferent_access_spec.rb[1:2:1:1:1] | passed | 2.1 seconds |
20
- ./spec/integration/rails/hash_with_indifferent_access_spec.rb[1:2:1:2:1] | passed | 2.13 seconds |
21
- ./spec/integration/rails/hash_with_indifferent_access_spec.rb[1:2:2:1:1] | passed | 2.1 seconds |
22
- ./spec/integration/rails/hash_with_indifferent_access_spec.rb[1:2:2:2:1] | passed | 2.22 seconds |
23
- ./spec/integration/rspec/be_falsey_matcher_spec.rb[1:1] | passed | 1.22 seconds |
24
- ./spec/integration/rspec/be_falsey_matcher_spec.rb[1:2] | passed | 1.25 seconds |
25
- ./spec/integration/rspec/be_matcher_spec.rb[1:1:1:1] | passed | 1.23 seconds |
26
- ./spec/integration/rspec/be_matcher_spec.rb[1:1:1:2] | passed | 1.21 seconds |
27
- ./spec/integration/rspec/be_matcher_spec.rb[1:1:2:1] | passed | 1.22 seconds |
28
- ./spec/integration/rspec/be_matcher_spec.rb[1:1:2:2] | passed | 1.23 seconds |
29
- ./spec/integration/rspec/be_matcher_spec.rb[1:2:1] | passed | 1.22 seconds |
30
- ./spec/integration/rspec/be_matcher_spec.rb[1:2:2] | passed | 1.22 seconds |
31
- ./spec/integration/rspec/be_matcher_spec.rb[1:3:1] | passed | 1.23 seconds |
32
- ./spec/integration/rspec/be_matcher_spec.rb[1:3:2] | passed | 1.23 seconds |
33
- ./spec/integration/rspec/be_matcher_spec.rb[1:4:1] | passed | 1.24 seconds |
34
- ./spec/integration/rspec/be_matcher_spec.rb[1:4:2] | passed | 1.27 seconds |
35
- ./spec/integration/rspec/be_matcher_spec.rb[1:5:1] | passed | 1.22 seconds |
36
- ./spec/integration/rspec/be_matcher_spec.rb[1:5:2] | passed | 1.22 seconds |
37
- ./spec/integration/rspec/be_matcher_spec.rb[1:6:1] | passed | 1.23 seconds |
38
- ./spec/integration/rspec/be_matcher_spec.rb[1:6:2] | passed | 1.25 seconds |
39
- ./spec/integration/rspec/be_matcher_spec.rb[1:7:1] | passed | 1.22 seconds |
40
- ./spec/integration/rspec/be_matcher_spec.rb[1:7:2] | passed | 1.23 seconds |
41
- ./spec/integration/rspec/be_matcher_spec.rb[1:8:1] | passed | 1.22 seconds |
42
- ./spec/integration/rspec/be_matcher_spec.rb[1:8:2] | passed | 1.26 seconds |
43
- ./spec/integration/rspec/be_matcher_spec.rb[1:9:1] | passed | 1.28 seconds |
44
- ./spec/integration/rspec/be_matcher_spec.rb[1:9:2] | passed | 1.22 seconds |
45
- ./spec/integration/rspec/be_nil_matcher_spec.rb[1:1] | passed | 1.22 seconds |
46
- ./spec/integration/rspec/be_nil_matcher_spec.rb[1:2] | passed | 1.27 seconds |
47
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:1:1:1] | passed | 1.27 seconds |
48
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:1:2:1] | passed | 1.31 seconds |
49
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:1:1:1] | passed | 1.31 seconds |
50
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:1:2:1] | passed | 1.27 seconds |
51
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:2:1:1:1:1] | passed | 1.28 seconds |
52
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:2:1:1:2:1] | passed | 1.27 seconds |
53
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:2:1:2:1] | passed | 1.25 seconds |
54
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:2:1:3:1:1:1] | passed | 1.32 seconds |
55
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:2:1:3:1:2:1] | passed | 1.27 seconds |
56
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:2:1:3:2:1:1] | passed | 1.31 seconds |
57
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:2:1:3:2:2:1] | passed | 1.25 seconds |
58
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:1:2:2:2:1] | passed | 1.28 seconds |
59
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:1:1:1] | passed | 1.34 seconds |
60
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:1:2:1] | passed | 1.26 seconds |
61
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:1:1:1] | passed | 1.26 seconds |
62
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:1:2:1] | passed | 1.26 seconds |
63
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:2:1:1:1:1] | passed | 1.26 seconds |
64
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:2:1:1:2:1] | passed | 1.26 seconds |
65
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:2:1:2:1] | passed | 1.26 seconds |
66
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:2:1:3:1:1:1] | passed | 1.3 seconds |
67
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:2:1:3:1:2:1] | passed | 1.28 seconds |
68
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:2:1:3:2:1:1] | passed | 1.31 seconds |
69
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:2:1:3:2:2:1] | passed | 1.25 seconds |
70
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:2:2:2:2:1] | passed | 1.29 seconds |
71
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:1:1:1] | passed | 1.25 seconds |
72
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:1:2:1] | passed | 1.25 seconds |
73
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:1:1:1] | passed | 1.26 seconds |
74
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:1:2:1] | passed | 1.25 seconds |
75
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:2:1:1:1:1] | passed | 1.26 seconds |
76
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:2:1:1:2:1] | passed | 1.26 seconds |
77
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:2:1:2:1] | passed | 1.26 seconds |
78
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:2:1:3:1:1:1] | passed | 1.3 seconds |
79
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:2:1:3:1:2:1] | passed | 1.35 seconds |
80
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:2:1:3:2:1:1] | passed | 1.26 seconds |
81
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:2:1:3:2:2:1] | passed | 1.26 seconds |
82
- ./spec/integration/rspec/be_predicate_matcher_spec.rb[1:3:2:2:2:1] | passed | 1.25 seconds |
83
- ./spec/integration/rspec/be_truthy_matcher_spec.rb[1:1] | passed | 1.32 seconds |
84
- ./spec/integration/rspec/be_truthy_matcher_spec.rb[1:2] | passed | 1.33 seconds |
85
- ./spec/integration/rspec/contain_exactly_matcher_spec.rb[1:1:1] | passed | 1.21 seconds |
86
- ./spec/integration/rspec/contain_exactly_matcher_spec.rb[1:1:2] | passed | 1.25 seconds |
87
- ./spec/integration/rspec/contain_exactly_matcher_spec.rb[1:2:1:1] | passed | 1.27 seconds |
88
- ./spec/integration/rspec/contain_exactly_matcher_spec.rb[1:2:1:2] | failed | 0.63016 seconds |
89
- ./spec/integration/rspec/contain_exactly_matcher_spec.rb[1:2:2:1] | passed | 1.34 seconds |
90
- ./spec/integration/rspec/contain_exactly_matcher_spec.rb[1:2:2:2] | passed | 1.26 seconds |
91
- ./spec/integration/rspec/contain_exactly_matcher_spec.rb[1:2:3:1] | passed | 1.29 seconds |
92
- ./spec/integration/rspec/eq_matcher_spec.rb[1:1:1] | passed | 1.3 seconds |
93
- ./spec/integration/rspec/eq_matcher_spec.rb[1:1:2] | passed | 1.27 seconds |
94
- ./spec/integration/rspec/eq_matcher_spec.rb[1:2:1] | passed | 1.22 seconds |
95
- ./spec/integration/rspec/eq_matcher_spec.rb[1:2:2] | passed | 1.25 seconds |
96
- ./spec/integration/rspec/eq_matcher_spec.rb[1:3:1] | passed | 1.23 seconds |
97
- ./spec/integration/rspec/eq_matcher_spec.rb[1:3:2] | passed | 1.27 seconds |
98
- ./spec/integration/rspec/eq_matcher_spec.rb[1:4:1] | passed | 1.33 seconds |
99
- ./spec/integration/rspec/eq_matcher_spec.rb[1:5:1] | passed | 1.28 seconds |
100
- ./spec/integration/rspec/eq_matcher_spec.rb[1:6:1] | passed | 1.27 seconds |
101
- ./spec/integration/rspec/eq_matcher_spec.rb[1:6:2] | passed | 1.23 seconds |
102
- ./spec/integration/rspec/eq_matcher_spec.rb[1:7:1] | passed | 1.29 seconds |
103
- ./spec/integration/rspec/eq_matcher_spec.rb[1:7:2] | passed | 1.24 seconds |
104
- ./spec/integration/rspec/eq_matcher_spec.rb[1:8:1] | passed | 1.27 seconds |
105
- ./spec/integration/rspec/eq_matcher_spec.rb[1:8:2] | passed | 1.27 seconds |
106
- ./spec/integration/rspec/eq_matcher_spec.rb[1:9:1] | passed | 1.25 seconds |
107
- ./spec/integration/rspec/eq_matcher_spec.rb[1:9:2] | passed | 1.22 seconds |
108
- ./spec/integration/rspec/eq_matcher_spec.rb[1:10:1] | passed | 1.27 seconds |
109
- ./spec/integration/rspec/eq_matcher_spec.rb[1:10:2] | passed | 1.26 seconds |
110
- ./spec/integration/rspec/eq_matcher_spec.rb[1:11:1] | passed | 1.28 seconds |
111
- ./spec/integration/rspec/eq_matcher_spec.rb[1:12:1] | passed | 1.28 seconds |
112
- ./spec/integration/rspec/eq_matcher_spec.rb[1:13:1] | passed | 1.29 seconds |
113
- ./spec/integration/rspec/have_attributes_matcher_spec.rb[1:1:1:1] | passed | 1.28 seconds |
114
- ./spec/integration/rspec/have_attributes_matcher_spec.rb[1:1:1:2] | passed | 1.27 seconds |
115
- ./spec/integration/rspec/have_attributes_matcher_spec.rb[1:1:2:1] | passed | 1.28 seconds |
116
- ./spec/integration/rspec/have_attributes_matcher_spec.rb[1:2:1:1] | passed | 1.28 seconds |
117
- ./spec/integration/rspec/have_attributes_matcher_spec.rb[1:2:1:2] | passed | 1.25 seconds |
118
- ./spec/integration/rspec/have_attributes_matcher_spec.rb[1:2:2:1] | passed | 1.28 seconds |
119
- ./spec/integration/rspec/include_matcher_spec.rb[1:1:1:1] | passed | 1.28 seconds |
120
- ./spec/integration/rspec/include_matcher_spec.rb[1:1:1:2] | passed | 1.31 seconds |
121
- ./spec/integration/rspec/include_matcher_spec.rb[1:1:2:1] | passed | 1.28 seconds |
122
- ./spec/integration/rspec/include_matcher_spec.rb[1:1:2:2] | passed | 1.24 seconds |
123
- ./spec/integration/rspec/include_matcher_spec.rb[1:2:1:1] | passed | 1.31 seconds |
124
- ./spec/integration/rspec/include_matcher_spec.rb[1:2:1:2] | passed | 1.24 seconds |
125
- ./spec/integration/rspec/include_matcher_spec.rb[1:2:2:1] | passed | 1.42 seconds |
126
- ./spec/integration/rspec/include_matcher_spec.rb[1:2:2:2] | passed | 1.22 seconds |
127
- ./spec/integration/rspec/match_matcher_spec.rb[1:1:1:1] | passed | 1.28 seconds |
128
- ./spec/integration/rspec/match_matcher_spec.rb[1:1:1:2] | passed | 1.22 seconds |
129
- ./spec/integration/rspec/match_matcher_spec.rb[1:1:2:1] | passed | 1.31 seconds |
130
- ./spec/integration/rspec/match_matcher_spec.rb[1:1:2:2] | passed | 1.25 seconds |
131
- ./spec/integration/rspec/match_matcher_spec.rb[1:2:1:1] | passed | 1.28 seconds |
132
- ./spec/integration/rspec/match_matcher_spec.rb[1:2:1:2] | passed | 1.24 seconds |
133
- ./spec/integration/rspec/match_matcher_spec.rb[1:2:2:1] | passed | 1.3 seconds |
134
- ./spec/integration/rspec/match_matcher_spec.rb[1:3:1:1] | passed | 1.28 seconds |
135
- ./spec/integration/rspec/match_matcher_spec.rb[1:3:1:2] | passed | 1.25 seconds |
136
- ./spec/integration/rspec/match_matcher_spec.rb[1:3:2:1] | passed | 1.28 seconds |
137
- ./spec/integration/rspec/match_matcher_spec.rb[1:3:2:2] | passed | 1.23 seconds |
138
- ./spec/integration/rspec/match_matcher_spec.rb[1:4:1:1] | passed | 1.28 seconds |
139
- ./spec/integration/rspec/match_matcher_spec.rb[1:4:1:2] | passed | 1.23 seconds |
140
- ./spec/integration/rspec/match_matcher_spec.rb[1:4:2:1] | passed | 1.28 seconds |
141
- ./spec/integration/rspec/match_matcher_spec.rb[1:5:1:1] | passed | 1.29 seconds |
142
- ./spec/integration/rspec/match_matcher_spec.rb[1:5:1:2] | passed | 1.25 seconds |
143
- ./spec/integration/rspec/match_matcher_spec.rb[1:5:2:1] | passed | 1.27 seconds |
144
- ./spec/integration/rspec/match_matcher_spec.rb[1:5:2:2] | passed | 1.23 seconds |
145
- ./spec/integration/rspec/match_matcher_spec.rb[1:6:1] | passed | 1.29 seconds |
146
- ./spec/integration/rspec/match_matcher_spec.rb[1:6:2] | passed | 1.23 seconds |
147
- ./spec/integration/rspec/match_matcher_spec.rb[1:7:1:1] | passed | 1.26 seconds |
148
- ./spec/integration/rspec/match_matcher_spec.rb[1:7:1:2] | passed | 1.31 seconds |
149
- ./spec/integration/rspec/match_matcher_spec.rb[1:7:2:1] | passed | 1.27 seconds |
150
- ./spec/integration/rspec/match_matcher_spec.rb[1:7:2:2] | passed | 1.26 seconds |
151
- ./spec/integration/rspec/match_matcher_spec.rb[1:8:1:1] | passed | 1.39 seconds |
152
- ./spec/integration/rspec/match_matcher_spec.rb[1:8:1:2] | passed | 1.25 seconds |
153
- ./spec/integration/rspec/match_matcher_spec.rb[1:8:2:1] | passed | 1.28 seconds |
154
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:1:1] | passed | 1.45 seconds |
155
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:1:2] | passed | 1.31 seconds |
156
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:2:1:1] | passed | 1.29 seconds |
157
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:2:1:2] | passed | 1.31 seconds |
158
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:2:2:1:1] | passed | 1.22 seconds |
159
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:2:2:1:2] | passed | 1.21 seconds |
160
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:2:2:2:1] | passed | 1.27 seconds |
161
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:2:2:2:2] | passed | 1.22 seconds |
162
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:3:1] | passed | 1.3 seconds |
163
- ./spec/integration/rspec/raise_error_matcher_spec.rb[1:3:2] | passed | 1.3 seconds |
164
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:1:1:1] | passed | 1.27 seconds |
165
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:1:1:2] | passed | 1.28 seconds |
166
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:1:2:1] | passed | 1.24 seconds |
167
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:1:2:2] | passed | 1.23 seconds |
168
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:2:1:1] | passed | 1.28 seconds |
169
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:2:1:2] | passed | 1.26 seconds |
170
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:2:2:1] | passed | 1.22 seconds |
171
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:2:2:2] | passed | 1.23 seconds |
172
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:3:1:1] | passed | 1.26 seconds |
173
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:3:1:2] | passed | 1.28 seconds |
174
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:3:2:1] | passed | 1.23 seconds |
175
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:3:2:2] | passed | 1.23 seconds |
176
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:4:1:1] | passed | 1.3 seconds |
177
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:4:1:2] | passed | 1.27 seconds |
178
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:4:2:1] | passed | 1.26 seconds |
179
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:4:2:2] | passed | 1.23 seconds |
180
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:5:1:1] | passed | 1.22 seconds |
181
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:5:1:2] | passed | 1.23 seconds |
182
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:5:2:1] | passed | 1.22 seconds |
183
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:5:2:2] | passed | 1.22 seconds |
184
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:6:1] | passed | 1.22 seconds |
185
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:6:2] | passed | 1.26 seconds |
186
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:7:1] | passed | 1.23 seconds |
187
- ./spec/integration/rspec/respond_to_matcher_spec.rb[1:7:2] | passed | 1.24 seconds |
188
- ./spec/integration/rspec/unhandled_errors_spec.rb[1:1:1] | unknown | |
189
- ./spec/integration/rspec/unhandled_errors_spec.rb[1:2:1] | unknown | |
190
- ./spec/unit/equality_matcher_spec.rb[1:1:1:1] | passed | 0.00022 seconds |
191
- ./spec/unit/equality_matcher_spec.rb[1:1:2:1] | passed | 0.00025 seconds |
192
- ./spec/unit/equality_matcher_spec.rb[1:1:3:1] | passed | 0.01272 seconds |
193
- ./spec/unit/equality_matcher_spec.rb[1:1:4:1] | passed | 0.0003 seconds |
194
- ./spec/unit/equality_matcher_spec.rb[1:1:5:1] | passed | 0.00052 seconds |
195
- ./spec/unit/equality_matcher_spec.rb[1:1:6:1] | passed | 0.00022 seconds |
196
- ./spec/unit/equality_matcher_spec.rb[1:1:7:1] | passed | 0.01308 seconds |
197
- ./spec/unit/equality_matcher_spec.rb[1:1:8:1] | passed | 0.00051 seconds |
198
- ./spec/unit/equality_matcher_spec.rb[1:1:9:1] | passed | 0.00035 seconds |
199
- ./spec/unit/equality_matcher_spec.rb[1:1:10:1] | passed | 0.00034 seconds |
200
- ./spec/unit/equality_matcher_spec.rb[1:1:11:1] | passed | 0.01028 seconds |
201
- ./spec/unit/equality_matcher_spec.rb[1:1:12:1] | passed | 0.00074 seconds |
202
- ./spec/unit/equality_matcher_spec.rb[1:1:13:1] | passed | 0.00191 seconds |
203
- ./spec/unit/equality_matcher_spec.rb[1:1:14:1] | passed | 0.00036 seconds |
204
- ./spec/unit/equality_matcher_spec.rb[1:1:15:1] | passed | 0.016 seconds |
205
- ./spec/unit/equality_matcher_spec.rb[1:1:16:1] | passed | 0.00104 seconds |
206
- ./spec/unit/equality_matcher_spec.rb[1:1:17:1] | passed | 0.00115 seconds |
207
- ./spec/unit/equality_matcher_spec.rb[1:1:18:1] | passed | 0.00374 seconds |
208
- ./spec/unit/equality_matcher_spec.rb[1:1:19:1] | passed | 0.00782 seconds |
209
- ./spec/unit/equality_matcher_spec.rb[1:1:20:1] | passed | 0.00187 seconds |
210
- ./spec/unit/equality_matcher_spec.rb[1:1:21:1] | passed | 0.00124 seconds |
211
- ./spec/unit/equality_matcher_spec.rb[1:1:22:1] | passed | 0.00125 seconds |
212
- ./spec/unit/equality_matcher_spec.rb[1:1:23:1] | passed | 0.00189 seconds |
213
- ./spec/unit/equality_matcher_spec.rb[1:1:24:1] | passed | 0.00244 seconds |
214
- ./spec/unit/equality_matcher_spec.rb[1:1:25:1] | passed | 0.0015 seconds |
215
- ./spec/unit/equality_matcher_spec.rb[1:1:26:1] | passed | 0.0177 seconds |
216
- ./spec/unit/equality_matcher_spec.rb[1:1:27:1] | passed | 0.00032 seconds |
217
- ./spec/unit/equality_matcher_spec.rb[1:1:28:1] | passed | 0.02128 seconds |
218
- ./spec/unit/equality_matcher_spec.rb[1:1:29:1] | passed | 0.00164 seconds |
219
- ./spec/unit/equality_matcher_spec.rb[1:1:30:1] | passed | 0.00096 seconds |
220
- ./spec/unit/equality_matcher_spec.rb[1:1:31:1] | passed | 0.00094 seconds |
221
- ./spec/unit/equality_matcher_spec.rb[1:1:32:1] | passed | 0.00309 seconds |
222
- ./spec/unit/equality_matcher_spec.rb[1:1:33:1] | passed | 0.00092 seconds |
223
- ./spec/unit/equality_matcher_spec.rb[1:1:34:1] | passed | 0.00107 seconds |
224
- ./spec/unit/equality_matcher_spec.rb[1:1:35:1] | passed | 0.00828 seconds |
225
- ./spec/unit/equality_matcher_spec.rb[1:1:36:1] | passed | 0.00271 seconds |
226
- ./spec/unit/equality_matcher_spec.rb[1:1:37:1] | passed | 0.00308 seconds |
227
- ./spec/unit/equality_matcher_spec.rb[1:1:38:1] | passed | 0.00407 seconds |
228
- ./spec/unit/equality_matcher_spec.rb[1:1:39:1] | passed | 0.00072 seconds |
229
- ./spec/unit/equality_matcher_spec.rb[1:1:40:1] | passed | 0.01364 seconds |
230
- ./spec/unit/equality_matcher_spec.rb[1:1:41:1] | passed | 0.00676 seconds |
231
- ./spec/unit/equality_matcher_spec.rb[1:1:42:1] | passed | 0.00096 seconds |
232
- ./spec/unit/equality_matcher_spec.rb[1:1:43:1] | passed | 0.00066 seconds |
233
- ./spec/unit/equality_matcher_spec.rb[1:1:44:1] | passed | 0.00338 seconds |
234
- ./spec/unit/equality_matcher_spec.rb[1:1:45:1] | passed | 0.01327 seconds |
235
- ./spec/unit/equality_matcher_spec.rb[1:1:46:1] | passed | 0.00207 seconds |
236
- ./spec/unit/equality_matcher_spec.rb[1:1:47:1] | passed | 0.00117 seconds |
237
- ./spec/unit/object_inspection_spec.rb[1:1:1:1:1] | passed | 0.00021 seconds |
238
- ./spec/unit/object_inspection_spec.rb[1:1:1:2:1] | passed | 0.0002 seconds |
239
- ./spec/unit/object_inspection_spec.rb[1:1:2:1:1] | passed | 0.00023 seconds |
240
- ./spec/unit/object_inspection_spec.rb[1:1:2:2:1] | passed | 0.0003 seconds |
241
- ./spec/unit/object_inspection_spec.rb[1:1:3:1:1] | passed | 0.00085 seconds |
242
- ./spec/unit/object_inspection_spec.rb[1:1:3:2:1] | passed | 0.00535 seconds |
243
- ./spec/unit/object_inspection_spec.rb[1:1:4:1:1] | passed | 0.00021 seconds |
244
- ./spec/unit/object_inspection_spec.rb[1:1:4:2:1] | passed | 0.00022 seconds |
245
- ./spec/unit/object_inspection_spec.rb[1:1:5:1:1] | passed | 0.00032 seconds |
246
- ./spec/unit/object_inspection_spec.rb[1:1:5:2:1] | passed | 0.00021 seconds |
247
- ./spec/unit/object_inspection_spec.rb[1:1:6:1:1] | passed | 0.00025 seconds |
248
- ./spec/unit/object_inspection_spec.rb[1:1:6:2:1] | passed | 0.0003 seconds |
249
- ./spec/unit/object_inspection_spec.rb[1:1:7:1] | passed | 0.00042 seconds |
250
- ./spec/unit/object_inspection_spec.rb[1:1:8:1:1] | passed | 0.00025 seconds |
251
- ./spec/unit/object_inspection_spec.rb[1:1:8:2:1] | passed | 0.01625 seconds |
252
- ./spec/unit/object_inspection_spec.rb[1:1:9:1:1:1] | passed | 0.00037 seconds |
253
- ./spec/unit/object_inspection_spec.rb[1:1:9:1:2:1] | passed | 0.00035 seconds |
254
- ./spec/unit/object_inspection_spec.rb[1:1:9:2:1:1] | passed | 0.00065 seconds |
255
- ./spec/unit/object_inspection_spec.rb[1:1:9:2:2:1] | passed | 0.00038 seconds |
256
- ./spec/unit/object_inspection_spec.rb[1:1:9:3:1:1] | passed | 0.00026 seconds |
257
- ./spec/unit/object_inspection_spec.rb[1:1:9:3:2:1] | passed | 0.00029 seconds |
258
- ./spec/unit/object_inspection_spec.rb[1:1:10:1:1:1:1] | passed | 0.00134 seconds |
259
- ./spec/unit/object_inspection_spec.rb[1:1:10:1:1:2:1] | passed | 0.00438 seconds |
260
- ./spec/unit/object_inspection_spec.rb[1:1:10:1:2:1:1] | passed | 0.00212 seconds |
261
- ./spec/unit/object_inspection_spec.rb[1:1:10:1:2:2:1] | passed | 0.00338 seconds |
262
- ./spec/unit/object_inspection_spec.rb[1:1:10:2:1:1] | passed | 0.0014 seconds |
263
- ./spec/unit/object_inspection_spec.rb[1:1:10:2:2:1] | passed | 0.00212 seconds |
264
- ./spec/unit/object_inspection_spec.rb[1:1:10:3:1:1] | passed | 0.00104 seconds |
265
- ./spec/unit/object_inspection_spec.rb[1:1:10:3:2:1] | passed | 0.00041 seconds |
266
- ./spec/unit/object_inspection_spec.rb[1:1:11:1:1] | passed | 0.00201 seconds |
267
- ./spec/unit/object_inspection_spec.rb[1:1:11:2:1] | passed | 0.0023 seconds |
268
- ./spec/unit/object_inspection_spec.rb[1:1:12:1:1:1] | passed | 0.00185 seconds |
269
- ./spec/unit/object_inspection_spec.rb[1:1:12:1:2:1] | passed | 0.0032 seconds |
270
- ./spec/unit/object_inspection_spec.rb[1:1:12:2:1:1] | passed | 0.00232 seconds |
271
- ./spec/unit/object_inspection_spec.rb[1:1:12:2:2:1] | passed | 0.00332 seconds |
272
- ./spec/unit/object_inspection_spec.rb[1:1:13:1:1:1] | passed | 0.00027 seconds |
273
- ./spec/unit/object_inspection_spec.rb[1:1:13:1:2:1] | passed | 0.00038 seconds |
274
- ./spec/unit/object_inspection_spec.rb[1:1:13:2:1:1] | passed | 0.00036 seconds |
275
- ./spec/unit/object_inspection_spec.rb[1:1:13:2:2:1] | passed | 0.00068 seconds |
276
- ./spec/unit/object_inspection_spec.rb[1:1:13:3:1:1] | passed | 0.00033 seconds |
277
- ./spec/unit/object_inspection_spec.rb[1:1:13:3:2:1] | passed | 0.0003 seconds |
278
- ./spec/unit/object_inspection_spec.rb[1:1:14:1:1] | passed | 0.00232 seconds |
279
- ./spec/unit/object_inspection_spec.rb[1:1:14:2:1] | passed | 0.00424 seconds |
280
- ./spec/unit/object_inspection_spec.rb[1:1:15:1:1] | passed | 0.00067 seconds |
281
- ./spec/unit/object_inspection_spec.rb[1:1:15:2:1] | passed | 0.00032 seconds |
282
- ./spec/unit/object_inspection_spec.rb[1:1:16:1:1] | passed | 0.00091 seconds |
283
- ./spec/unit/object_inspection_spec.rb[1:1:16:2:1] | passed | 0.00036 seconds |
284
- ./spec/unit/object_inspection_spec.rb[1:1:17:1:1] | passed | 0.00143 seconds |
285
- ./spec/unit/object_inspection_spec.rb[1:1:17:2:1] | passed | 0.00045 seconds |
286
- ./spec/unit/object_inspection_spec.rb[1:1:18:1:1:1] | passed | 0.00031 seconds |
287
- ./spec/unit/object_inspection_spec.rb[1:1:18:1:2:1] | passed | 0.00025 seconds |
288
- ./spec/unit/object_inspection_spec.rb[1:1:19:1:1] | passed | 0.00046 seconds |
289
- ./spec/unit/object_inspection_spec.rb[1:1:19:2:1] | passed | 0.00048 seconds |
290
- ./spec/unit/object_inspection_spec.rb[1:1:20:1:1] | passed | 0.00147 seconds |
291
- ./spec/unit/object_inspection_spec.rb[1:1:20:2:1] | passed | 0.01531 seconds |
292
- ./spec/unit/object_inspection_spec.rb[1:1:21:1:1] | passed | 0.00234 seconds |
293
- ./spec/unit/object_inspection_spec.rb[1:1:21:2:1] | passed | 0.00219 seconds |
294
- ./spec/unit/object_inspection_spec.rb[1:1:22:1:1] | passed | 0.00124 seconds |
295
- ./spec/unit/object_inspection_spec.rb[1:1:22:2:1] | passed | 0.01174 seconds |
296
- ./spec/unit/object_inspection_spec.rb[1:1:23:1:1] | passed | 0.00045 seconds |
297
- ./spec/unit/object_inspection_spec.rb[1:1:23:2:1] | passed | 0.0004 seconds |
298
- ./spec/unit/object_inspection_spec.rb[1:1:24:1:1] | passed | 0.00032 seconds |
299
- ./spec/unit/object_inspection_spec.rb[1:1:24:2:1] | passed | 0.00029 seconds |
300
- ./spec/unit/object_inspection_spec.rb[1:1:25:1:1] | passed | 0.00115 seconds |
301
- ./spec/unit/object_inspection_spec.rb[1:1:25:2:1] | passed | 0.00052 seconds |
302
- ./spec/unit/object_inspection_spec.rb[1:1:26:1:1] | passed | 0.00062 seconds |
303
- ./spec/unit/object_inspection_spec.rb[1:1:26:2:1] | passed | 0.00038 seconds |
304
- ./spec/unit/object_inspection_spec.rb[1:1:27:1:1] | passed | 0.00021 seconds |
305
- ./spec/unit/object_inspection_spec.rb[1:1:27:2:1] | passed | 0.00021 seconds |
306
- ./spec/unit/object_inspection_spec.rb[1:1:28:1:1] | passed | 0.00065 seconds |
307
- ./spec/unit/object_inspection_spec.rb[1:1:28:2:1] | passed | 0.00032 seconds |
308
- ./spec/unit/object_inspection_spec.rb[1:1:29:1:1:1] | passed | 0.00133 seconds |
309
- ./spec/unit/object_inspection_spec.rb[1:1:29:1:2:1] | passed | 0.00052 seconds |
310
- ./spec/unit/object_inspection_spec.rb[1:1:29:2:1:1] | passed | 0.00042 seconds |
311
- ./spec/unit/object_inspection_spec.rb[1:1:29:2:2:1] | passed | 0.00066 seconds |
312
- ./spec/unit/object_inspection_spec.rb[1:1:30:1:1] | passed | 0.00042 seconds |
313
- ./spec/unit/object_inspection_spec.rb[1:1:30:2:1] | passed | 0.0011 seconds |
314
- ./spec/unit/object_inspection_spec.rb[1:1:31:1:1] | passed | 0.00021 seconds |
315
- ./spec/unit/object_inspection_spec.rb[1:1:31:2:1] | passed | 0.00022 seconds |
316
- ./spec/unit/object_inspection_spec.rb[1:1:32:1:1] | passed | 0.00064 seconds |
317
- ./spec/unit/object_inspection_spec.rb[1:1:32:2:1] | passed | 0.00079 seconds |
318
- ./spec/unit/object_inspection_spec.rb[1:1:33:1:1] | passed | 0.00024 seconds |
319
- ./spec/unit/object_inspection_spec.rb[1:1:33:2:1] | passed | 0.00027 seconds |
320
- ./spec/unit/rspec/matchers/be_compared_to_spec.rb[1:1:1:1] | passed | 0.00043 seconds |
321
- ./spec/unit/rspec/matchers/be_compared_to_spec.rb[1:1:2:1] | passed | 0.00042 seconds |
322
- ./spec/unit/rspec/matchers/be_compared_to_spec.rb[1:1:3:1] | passed | 0.00047 seconds |
323
- ./spec/unit/rspec/matchers/be_compared_to_spec.rb[1:1:4:1] | passed | 0.00056 seconds |
324
- ./spec/unit/rspec/matchers/be_compared_to_spec.rb[1:1:5:1] | passed | 0.0007 seconds |
325
- ./spec/unit/rspec/matchers/be_compared_to_spec.rb[1:1:6:1] | passed | 0.00045 seconds |
326
- ./spec/unit/rspec/matchers/be_compared_to_spec.rb[1:1:7:1] | passed | 0.00044 seconds |
327
- ./spec/unit/rspec/matchers/be_falsey_spec.rb[1:1:1] | passed | 0.00054 seconds |
328
- ./spec/unit/rspec/matchers/be_nil_spec.rb[1:1:1] | passed | 0.00054 seconds |
329
- ./spec/unit/rspec/matchers/be_predicate_spec.rb[1:1:1] | passed | 0.00047 seconds |
330
- ./spec/unit/rspec/matchers/be_predicate_spec.rb[2:1:1] | passed | 0.00291 seconds |
331
- ./spec/unit/rspec/matchers/be_predicate_spec.rb[3:1:1] | passed | 0.00039 seconds |
332
- ./spec/unit/rspec/matchers/be_spec.rb[1:1:1:1] | passed | 0.00049 seconds |
333
- ./spec/unit/rspec/matchers/be_spec.rb[1:1:2:1] | passed | 0.008 seconds |
334
- ./spec/unit/rspec/matchers/be_truthy_spec.rb[1:1:1] | passed | 0.00033 seconds |
335
- ./spec/unit/rspec/matchers/contain_exactly_spec.rb[1:1:1] | passed | 0.00452 seconds |
336
- ./spec/unit/rspec/matchers/eq_spec.rb[1:1:1] | passed | 0.01077 seconds |
337
- ./spec/unit/rspec/matchers/have_attributes_spec.rb[1:1:1] | passed | 0.00118 seconds |
338
- ./spec/unit/rspec/matchers/include_spec.rb[1:1:1:1] | passed | 0.00044 seconds |
339
- ./spec/unit/rspec/matchers/include_spec.rb[1:1:2:1] | passed | 0.00061 seconds |
340
- ./spec/unit/rspec/matchers/match_spec.rb[1:1:1] | passed | 0.00781 seconds |
341
- ./spec/unit/rspec/matchers/raise_error_spec.rb[1:1:1:1] | passed | 0.00219 seconds |
342
- ./spec/unit/rspec/matchers/raise_error_spec.rb[1:1:2:1] | passed | 0.00024 seconds |
343
- ./spec/unit/rspec/matchers/raise_error_spec.rb[1:1:3:1] | passed | 0.00029 seconds |
344
- ./spec/unit/rspec/matchers/respond_to_spec.rb[1:1:1:1] | passed | 0.00052 seconds |
345
- ./spec/unit/rspec/matchers/respond_to_spec.rb[1:1:2:1] | passed | 0.00058 seconds |
346
- ./spec/unit/rspec/matchers/respond_to_spec.rb[1:1:3:1] | passed | 0.00118 seconds |
347
- ./spec/unit/rspec/matchers/respond_to_spec.rb[1:1:4:1] | passed | 0.00058 seconds |
348
- ./spec/unit/rspec/matchers/respond_to_spec.rb[1:1:5:1] | passed | 0.00085 seconds |
349
- ./spec/unit/rspec/matchers/respond_to_spec.rb[1:1:6:1] | passed | 0.00162 seconds |
350
- ./spec/unit/rspec/matchers/respond_to_spec.rb[1:1:7:1] | passed | 0.00101 seconds |
1
+ example_id | status | run_time |
2
+ ---------------------------------------------------------- | ------ | -------------- |
3
+ ./spec/integration/rspec/unhandled_errors_spec.rb[1:1:1:1] | passed | 1.28 seconds |
4
+ ./spec/integration/rspec/unhandled_errors_spec.rb[1:1:2:1] | passed | 1.31 seconds |
5
+ ./spec/integration/rspec/unhandled_errors_spec.rb[1:2:1] | failed | 0.7241 seconds |