super_diff 0.10.0 → 0.12.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.
Potentially problematic release.
This version of super_diff might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/README.md +19 -166
- data/lib/super_diff/active_record/differs/active_record_relation.rb +1 -1
- data/lib/super_diff/active_record/inspection_tree_builders/active_record_model.rb +57 -0
- data/lib/super_diff/active_record/inspection_tree_builders/active_record_relation.rb +34 -0
- data/lib/super_diff/active_record/inspection_tree_builders.rb +14 -0
- data/lib/super_diff/active_record/monkey_patches.rb +6 -3
- data/lib/super_diff/active_record/object_inspection.rb +16 -4
- data/lib/super_diff/active_record/operation_tree_builders/active_record_model.rb +6 -2
- data/lib/super_diff/active_record/operation_tree_builders/active_record_relation.rb +1 -1
- data/lib/super_diff/active_record/operation_tree_flatteners/active_record_relation.rb +1 -1
- data/lib/super_diff/active_record/operation_trees/active_record_relation.rb +1 -1
- data/lib/super_diff/active_record.rb +12 -16
- data/lib/super_diff/active_support/differs/hash_with_indifferent_access.rb +1 -1
- data/lib/super_diff/active_support/inspection_tree_builders/hash_with_indifferent_access.rb +44 -0
- data/lib/super_diff/active_support/inspection_tree_builders/ordered_options.rb +44 -0
- data/lib/super_diff/active_support/inspection_tree_builders.rb +14 -0
- data/lib/super_diff/active_support/object_inspection.rb +16 -4
- data/lib/super_diff/active_support/operation_tree_builders/hash_with_indifferent_access.rb +1 -1
- data/lib/super_diff/active_support/operation_tree_flatteners/hash_with_indifferent_access.rb +1 -1
- data/lib/super_diff/active_support/operation_trees/hash_with_indifferent_access.rb +1 -1
- data/lib/super_diff/active_support.rb +11 -14
- data/lib/super_diff/basic/diff_formatters/collection.rb +135 -0
- data/lib/super_diff/basic/diff_formatters/multiline_string.rb +34 -0
- data/lib/super_diff/basic/diff_formatters.rb +11 -0
- data/lib/super_diff/basic/differs/array.rb +17 -0
- data/lib/super_diff/basic/differs/custom_object.rb +19 -0
- data/lib/super_diff/basic/differs/date_like.rb +17 -0
- data/lib/super_diff/basic/differs/default_object.rb +24 -0
- data/lib/super_diff/basic/differs/hash.rb +17 -0
- data/lib/super_diff/basic/differs/multiline_string.rb +18 -0
- data/lib/super_diff/basic/differs/time_like.rb +17 -0
- data/lib/super_diff/basic/differs.rb +24 -0
- data/lib/super_diff/basic/inspection_tree_builders/array.rb +53 -0
- data/lib/super_diff/basic/inspection_tree_builders/custom_object.rb +41 -0
- data/lib/super_diff/basic/inspection_tree_builders/date_like.rb +51 -0
- data/lib/super_diff/basic/inspection_tree_builders/default_object.rb +77 -0
- data/lib/super_diff/basic/inspection_tree_builders/hash.rb +63 -0
- data/lib/super_diff/basic/inspection_tree_builders/primitive.rb +19 -0
- data/lib/super_diff/basic/inspection_tree_builders/time_like.rb +58 -0
- data/lib/super_diff/basic/inspection_tree_builders.rb +20 -0
- data/lib/super_diff/basic/operation_tree_builders/array.rb +111 -0
- data/lib/super_diff/basic/operation_tree_builders/custom_object.rb +42 -0
- data/lib/super_diff/basic/operation_tree_builders/date_like.rb +17 -0
- data/lib/super_diff/basic/operation_tree_builders/default_object.rb +117 -0
- data/lib/super_diff/basic/operation_tree_builders/hash.rb +222 -0
- data/lib/super_diff/basic/operation_tree_builders/multiline_string.rb +90 -0
- data/lib/super_diff/basic/operation_tree_builders/time_like.rb +26 -0
- data/lib/super_diff/basic/operation_tree_builders.rb +34 -0
- data/lib/super_diff/basic/operation_tree_flatteners/array.rb +17 -0
- data/lib/super_diff/basic/operation_tree_flatteners/collection.rb +140 -0
- data/lib/super_diff/basic/operation_tree_flatteners/custom_object.rb +30 -0
- data/lib/super_diff/basic/operation_tree_flatteners/default_object.rb +32 -0
- data/lib/super_diff/basic/operation_tree_flatteners/hash.rb +35 -0
- data/lib/super_diff/basic/operation_tree_flatteners/multiline_string.rb +20 -0
- data/lib/super_diff/basic/operation_tree_flatteners.rb +24 -0
- data/lib/super_diff/basic/operation_trees/array.rb +17 -0
- data/lib/super_diff/basic/operation_trees/custom_object.rb +17 -0
- data/lib/super_diff/basic/operation_trees/default_object.rb +42 -0
- data/lib/super_diff/basic/operation_trees/hash.rb +17 -0
- data/lib/super_diff/basic/operation_trees/multiline_string.rb +17 -0
- data/lib/super_diff/basic/operation_trees.rb +25 -0
- data/lib/super_diff/basic.rb +48 -0
- data/lib/super_diff/{differs/base.rb → core/abstract_differ.rb} +2 -2
- data/lib/super_diff/core/abstract_inspection_tree_builder.rb +26 -0
- data/lib/super_diff/{operation_trees/base.rb → core/abstract_operation_tree.rb} +6 -2
- data/lib/super_diff/{operation_tree_builders/base.rb → core/abstract_operation_tree_builder.rb} +4 -8
- data/lib/super_diff/{operation_tree_flatteners/base.rb → core/abstract_operation_tree_flattener.rb} +2 -2
- data/lib/super_diff/{operations → core}/binary_operation.rb +1 -1
- data/lib/super_diff/core/colorized_document_extensions.rb +20 -0
- data/lib/super_diff/core/configuration.rb +192 -0
- data/lib/super_diff/core/differ_dispatcher.rb +33 -0
- data/lib/super_diff/core/gem_version.rb +47 -0
- data/lib/super_diff/core/helpers.rb +88 -0
- data/lib/super_diff/core/implementation_checks.rb +21 -0
- data/lib/super_diff/{object_inspection → core}/inspection_tree.rb +32 -26
- data/lib/super_diff/core/inspection_tree_builder_dispatcher.rb +23 -0
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/as_lines_when_rendering_to_lines.rb +12 -5
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/as_prefix_when_rendering_to_lines.rb +3 -3
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/as_prelude_when_rendering_to_lines.rb +3 -3
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/as_single_line.rb +3 -3
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/base.rb +2 -2
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/inspection.rb +7 -11
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/nesting.rb +2 -2
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/only_when.rb +2 -2
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/text.rb +2 -2
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/when_empty.rb +2 -2
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/when_non_empty.rb +2 -2
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/when_rendering_to_lines.rb +2 -2
- data/lib/super_diff/{object_inspection/nodes → core/inspection_tree_nodes}/when_rendering_to_string.rb +2 -2
- data/lib/super_diff/core/inspection_tree_nodes.rb +55 -0
- data/lib/super_diff/core/line.rb +85 -0
- data/lib/super_diff/{errors → core}/no_differ_available_error.rb +1 -1
- data/lib/super_diff/core/no_inspection_tree_builder_available_error.rb +21 -0
- data/lib/super_diff/core/no_operation_tree_available_error.rb +20 -0
- data/lib/super_diff/{errors/no_operational_sequencer_available_error.rb → core/no_operation_tree_builder_available_error.rb} +6 -4
- data/lib/super_diff/{operation_tree_builders/main.rb → core/operation_tree_builder_dispatcher.rb} +9 -13
- data/lib/super_diff/core/operation_tree_finder.rb +27 -0
- data/lib/super_diff/core/prefix_for_next_inspection_tree_node.rb +6 -0
- data/lib/super_diff/core/prelude_for_next_inspection_tree_node.rb +6 -0
- data/lib/super_diff/core/recursion_guard.rb +52 -0
- data/lib/super_diff/core/tiered_lines.rb +6 -0
- data/lib/super_diff/core/tiered_lines_elider.rb +472 -0
- data/lib/super_diff/core/tiered_lines_formatter.rb +77 -0
- data/lib/super_diff/{operations → core}/unary_operation.rb +1 -1
- data/lib/super_diff/core.rb +69 -0
- data/lib/super_diff/differs.rb +19 -11
- data/lib/super_diff/equality_matchers/array.rb +3 -3
- data/lib/super_diff/equality_matchers/default.rb +8 -3
- data/lib/super_diff/equality_matchers/hash.rb +3 -3
- data/lib/super_diff/equality_matchers/multiline_string.rb +3 -3
- data/lib/super_diff/equality_matchers/primitive.rb +3 -3
- data/lib/super_diff/equality_matchers/singleline_string.rb +2 -2
- data/lib/super_diff/errors.rb +12 -12
- data/lib/super_diff/object_inspection.rb +63 -14
- data/lib/super_diff/operation_tree_builders.rb +19 -14
- data/lib/super_diff/operation_tree_flatteners.rb +19 -16
- data/lib/super_diff/operation_trees.rb +19 -9
- data/lib/super_diff/operations.rb +12 -2
- data/lib/super_diff/rspec/augmented_matcher.rb +1 -1
- data/lib/super_diff/rspec/differ.rb +4 -5
- data/lib/super_diff/rspec/differs/collection_containing_exactly.rb +1 -1
- data/lib/super_diff/rspec/differs/collection_including.rb +1 -1
- data/lib/super_diff/rspec/differs/hash_including.rb +1 -1
- data/lib/super_diff/rspec/differs/object_having_attributes.rb +1 -1
- data/lib/super_diff/rspec/inspection_tree_builders/collection_containing_exactly.rb +34 -0
- data/lib/super_diff/rspec/inspection_tree_builders/collection_including.rb +40 -0
- data/lib/super_diff/rspec/inspection_tree_builders/double.rb +100 -0
- data/lib/super_diff/rspec/inspection_tree_builders/generic_describable_matcher.rb +17 -0
- data/lib/super_diff/rspec/inspection_tree_builders/hash_including.rb +40 -0
- data/lib/super_diff/rspec/inspection_tree_builders/instance_of.rb +25 -0
- data/lib/super_diff/rspec/inspection_tree_builders/kind_of.rb +25 -0
- data/lib/super_diff/rspec/inspection_tree_builders/object_having_attributes.rb +34 -0
- data/lib/super_diff/rspec/inspection_tree_builders/primitive.rb +9 -0
- data/lib/super_diff/rspec/inspection_tree_builders/value_within.rb +30 -0
- data/lib/super_diff/rspec/inspection_tree_builders.rb +40 -0
- data/lib/super_diff/rspec/matcher_text_builders/raise_error.rb +3 -7
- data/lib/super_diff/rspec/monkey_patches.rb +59 -8
- data/lib/super_diff/rspec/object_inspection.rb +14 -4
- data/lib/super_diff/rspec/operation_tree_builders/collection_containing_exactly.rb +4 -4
- data/lib/super_diff/rspec/operation_tree_builders/collection_including.rb +1 -1
- data/lib/super_diff/rspec/operation_tree_builders/hash_including.rb +1 -1
- data/lib/super_diff/rspec/operation_tree_builders/object_having_attributes.rb +2 -2
- data/lib/super_diff/rspec.rb +28 -25
- data/lib/super_diff/version.rb +1 -1
- data/lib/super_diff.rb +78 -21
- data/spec/examples.txt +704 -493
- data/spec/integration/rails/engines_spec.rb +8 -3
- data/spec/integration/rspec/contain_exactly_matcher_spec.rb +19 -19
- data/spec/integration/rspec/eq_matcher_spec.rb +111 -39
- data/spec/integration/rspec/generic_describable_matchers_spec.rb +177 -0
- data/spec/integration/rspec/have_attributes_matcher_spec.rb +25 -25
- data/spec/integration/rspec/include_matcher_spec.rb +23 -23
- data/spec/integration/rspec/magic_metadata_spec.rb +51 -0
- data/spec/integration/rspec/match_array_matcher_spec.rb +30 -30
- data/spec/integration/rspec/match_matcher_spec.rb +93 -93
- data/spec/integration/rspec/raise_error_matcher_spec.rb +813 -69
- data/spec/internal/log/test.log +0 -0
- data/spec/spec_helper.rb +3 -0
- data/spec/support/integration/helpers.rb +19 -11
- data/spec/support/integration/matchers/produce_output_when_run_matcher.rb +1 -1
- data/spec/support/integration/matchers.rb +34 -0
- data/spec/support/integration/test_programs/base.rb +6 -6
- data/spec/support/integration/test_programs/rspec_rails_engine.rb +3 -13
- data/spec/support/models/active_record/person.rb +8 -1
- data/spec/support/shared_examples/active_record.rb +38 -38
- data/spec/support/shared_examples/active_support.rb +125 -4
- data/spec/support/shared_examples/elided_diffs.rb +48 -48
- data/spec/support/shared_examples/hash_with_indifferent_access.rb +88 -88
- data/spec/support/shared_examples/key.rb +10 -10
- data/spec/support/unit/helpers.rb +12 -1
- data/spec/support/unit/matchers/be_deprecated_in_favor_of.rb +39 -0
- data/spec/unit/active_record/object_inspection_spec.rb +5 -5
- data/spec/unit/active_support/object_inspection_spec.rb +170 -0
- data/spec/unit/{operation_tree_flatteners → basic/operation_tree_flatteners}/array_spec.rb +8 -8
- data/spec/unit/{operation_tree_flatteners → basic/operation_tree_flatteners}/custom_object_spec.rb +9 -9
- data/spec/unit/{operation_tree_flatteners → basic/operation_tree_flatteners}/default_object_spec.rb +9 -9
- data/spec/unit/{operation_tree_flatteners → basic/operation_tree_flatteners}/hash_spec.rb +8 -8
- data/spec/unit/{operation_tree_flatteners → basic/operation_tree_flatteners}/multiline_string_spec.rb +4 -4
- data/spec/unit/{helpers_spec.rb → core/helpers_spec.rb} +2 -2
- data/spec/unit/{tiered_lines_elider_spec.rb → core/tiered_lines_elider_spec.rb} +2 -2
- data/spec/unit/{tiered_lines_formatter_spec.rb → core/tiered_lines_formatter_spec.rb} +1 -1
- data/spec/unit/deprecations_spec.rb +176 -0
- data/spec/unit/equality_matchers/main_spec.rb +5 -5
- data/spec/unit/rspec/matchers/raise_error_spec.rb +43 -11
- data/spec/unit/rspec/object_inspection/rspec_matcher_spec.rb +91 -0
- data/spec/unit/rspec/object_inspection_spec.rb +2 -2
- data/spec/unit/super_diff_spec.rb +64 -0
- data/super_diff.gemspec +6 -0
- metadata +137 -112
- data/lib/super_diff/active_record/object_inspection/inspection_tree_builders/active_record_model.rb +0 -39
- data/lib/super_diff/active_record/object_inspection/inspection_tree_builders/active_record_relation.rb +0 -27
- data/lib/super_diff/active_record/object_inspection/inspection_tree_builders.rb +0 -16
- data/lib/super_diff/active_support/object_inspection/inspection_tree_builders/hash_with_indifferent_access.rb +0 -31
- data/lib/super_diff/active_support/object_inspection/inspection_tree_builders.rb +0 -12
- data/lib/super_diff/colorized_document_extensions.rb +0 -18
- data/lib/super_diff/configuration.rb +0 -149
- data/lib/super_diff/diff_formatters/collection.rb +0 -132
- data/lib/super_diff/diff_formatters/multiline_string.rb +0 -31
- data/lib/super_diff/differs/array.rb +0 -15
- data/lib/super_diff/differs/custom_object.rb +0 -17
- data/lib/super_diff/differs/default_object.rb +0 -19
- data/lib/super_diff/differs/defaults.rb +0 -12
- data/lib/super_diff/differs/empty.rb +0 -13
- data/lib/super_diff/differs/hash.rb +0 -15
- data/lib/super_diff/differs/main.rb +0 -31
- data/lib/super_diff/differs/multiline_string.rb +0 -16
- data/lib/super_diff/differs/time_like.rb +0 -15
- data/lib/super_diff/errors/no_diff_formatter_available_error.rb +0 -21
- data/lib/super_diff/gem_version.rb +0 -45
- data/lib/super_diff/helpers.rb +0 -86
- data/lib/super_diff/implementation_checks.rb +0 -19
- data/lib/super_diff/line.rb +0 -83
- data/lib/super_diff/object_inspection/inspection_tree_builders/array.rb +0 -34
- data/lib/super_diff/object_inspection/inspection_tree_builders/base.rb +0 -27
- data/lib/super_diff/object_inspection/inspection_tree_builders/custom_object.rb +0 -31
- data/lib/super_diff/object_inspection/inspection_tree_builders/default_object.rb +0 -54
- data/lib/super_diff/object_inspection/inspection_tree_builders/defaults.rb +0 -14
- data/lib/super_diff/object_inspection/inspection_tree_builders/hash.rb +0 -38
- data/lib/super_diff/object_inspection/inspection_tree_builders/main.rb +0 -30
- data/lib/super_diff/object_inspection/inspection_tree_builders/primitive.rb +0 -21
- data/lib/super_diff/object_inspection/inspection_tree_builders/time_like.rb +0 -47
- data/lib/super_diff/object_inspection/inspection_tree_builders.rb +0 -44
- data/lib/super_diff/object_inspection/nodes.rb +0 -50
- data/lib/super_diff/object_inspection/prefix_for_next_node.rb +0 -6
- data/lib/super_diff/object_inspection/prelude_for_next_node.rb +0 -6
- data/lib/super_diff/operation_tree_builders/array.rb +0 -107
- data/lib/super_diff/operation_tree_builders/custom_object.rb +0 -40
- data/lib/super_diff/operation_tree_builders/default_object.rb +0 -119
- data/lib/super_diff/operation_tree_builders/defaults.rb +0 -5
- data/lib/super_diff/operation_tree_builders/hash.rb +0 -218
- data/lib/super_diff/operation_tree_builders/multiline_string.rb +0 -86
- data/lib/super_diff/operation_tree_builders/time_like.rb +0 -24
- data/lib/super_diff/operation_tree_flatteners/array.rb +0 -15
- data/lib/super_diff/operation_tree_flatteners/collection.rb +0 -136
- data/lib/super_diff/operation_tree_flatteners/custom_object.rb +0 -28
- data/lib/super_diff/operation_tree_flatteners/default_object.rb +0 -31
- data/lib/super_diff/operation_tree_flatteners/hash.rb +0 -33
- data/lib/super_diff/operation_tree_flatteners/multiline_string.rb +0 -18
- data/lib/super_diff/operation_trees/array.rb +0 -15
- data/lib/super_diff/operation_trees/custom_object.rb +0 -15
- data/lib/super_diff/operation_trees/default_object.rb +0 -40
- data/lib/super_diff/operation_trees/defaults.rb +0 -5
- data/lib/super_diff/operation_trees/hash.rb +0 -15
- data/lib/super_diff/operation_trees/main.rb +0 -35
- data/lib/super_diff/operation_trees/multiline_string.rb +0 -15
- data/lib/super_diff/recursion_guard.rb +0 -50
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders/collection_containing_exactly.rb +0 -29
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders/collection_including.rb +0 -36
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders/double.rb +0 -98
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders/hash_including.rb +0 -37
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders/instance_of.rb +0 -28
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders/kind_of.rb +0 -28
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders/object_having_attributes.rb +0 -29
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders/primitive.rb +0 -10
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders/value_within.rb +0 -33
- data/lib/super_diff/rspec/object_inspection/inspection_tree_builders.rb +0 -44
- data/lib/super_diff/tiered_lines.rb +0 -4
- data/lib/super_diff/tiered_lines_elider.rb +0 -462
- data/lib/super_diff/tiered_lines_formatter.rb +0 -75
@@ -1,6 +1,6 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
|
-
RSpec.describe SuperDiff::OperationTreeFlatteners::Array do
|
3
|
+
RSpec.describe SuperDiff::Basic::OperationTreeFlatteners::Array do
|
4
4
|
context "given an empty tree" do
|
5
5
|
it "returns a set of lines which are simply the open token and close token" do
|
6
6
|
expect(described_class.call([])).to match(
|
@@ -30,7 +30,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Array do
|
|
30
30
|
it "returns a series of lines from inspecting each value, creating multiple lines upon encountering inner data structures" do
|
31
31
|
collection = Array.new(3) { :some_value }
|
32
32
|
operation_tree =
|
33
|
-
SuperDiff::OperationTrees::Array.new(
|
33
|
+
SuperDiff::Basic::OperationTrees::Array.new(
|
34
34
|
[
|
35
35
|
double(
|
36
36
|
:operation,
|
@@ -134,7 +134,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Array do
|
|
134
134
|
expected = Array.new(3) { :some_value }
|
135
135
|
actual = Array.new(4) { :some_value }
|
136
136
|
operation_tree =
|
137
|
-
SuperDiff::OperationTrees::Array.new(
|
137
|
+
SuperDiff::Basic::OperationTrees::Array.new(
|
138
138
|
[
|
139
139
|
double(
|
140
140
|
:operation,
|
@@ -266,7 +266,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Array do
|
|
266
266
|
collection = Array.new(3) { :some_value }
|
267
267
|
subcollection = Array.new(2) { :some_value }
|
268
268
|
operation_tree =
|
269
|
-
SuperDiff::OperationTrees::Array.new(
|
269
|
+
SuperDiff::Basic::OperationTrees::Array.new(
|
270
270
|
[
|
271
271
|
double(
|
272
272
|
:operation,
|
@@ -283,7 +283,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Array do
|
|
283
283
|
right_collection: collection,
|
284
284
|
right_index: 1,
|
285
285
|
children:
|
286
|
-
SuperDiff::OperationTrees::Array.new(
|
286
|
+
SuperDiff::Basic::OperationTrees::Array.new(
|
287
287
|
[
|
288
288
|
double(
|
289
289
|
:operation,
|
@@ -406,7 +406,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Array do
|
|
406
406
|
right_collection << right_collection
|
407
407
|
|
408
408
|
operation_tree =
|
409
|
-
SuperDiff::OperationTrees::Array.new(
|
409
|
+
SuperDiff::Basic::OperationTrees::Array.new(
|
410
410
|
[
|
411
411
|
double(
|
412
412
|
:operation,
|
@@ -502,7 +502,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Array do
|
|
502
502
|
right_subcollection << right_subcollection
|
503
503
|
|
504
504
|
operation_tree =
|
505
|
-
SuperDiff::OperationTrees::Array.new(
|
505
|
+
SuperDiff::Basic::OperationTrees::Array.new(
|
506
506
|
[
|
507
507
|
double(
|
508
508
|
:operation,
|
@@ -519,7 +519,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Array do
|
|
519
519
|
right_collection: collection,
|
520
520
|
right_index: 1,
|
521
521
|
children:
|
522
|
-
SuperDiff::OperationTrees::Array.new(
|
522
|
+
SuperDiff::Basic::OperationTrees::Array.new(
|
523
523
|
[
|
524
524
|
double(
|
525
525
|
:operation,
|
data/spec/unit/{operation_tree_flatteners → basic/operation_tree_flatteners}/custom_object_spec.rb
RENAMED
@@ -1,10 +1,10 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
|
-
RSpec.describe SuperDiff::OperationTreeFlatteners::CustomObject do
|
3
|
+
RSpec.describe SuperDiff::Basic::OperationTreeFlatteners::CustomObject do
|
4
4
|
context "given an empty tree" do
|
5
5
|
it "returns a set of lines which are simply the open token and close token" do
|
6
6
|
operation_tree =
|
7
|
-
SuperDiff::OperationTrees::CustomObject.new(
|
7
|
+
SuperDiff::Basic::OperationTrees::CustomObject.new(
|
8
8
|
[],
|
9
9
|
underlying_object: underlying_object
|
10
10
|
)
|
@@ -38,7 +38,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::CustomObject do
|
|
38
38
|
it "returns a series of lines from inspecting each value, creating multiple lines upon encountering inner data structures" do
|
39
39
|
collection = Array.new(3) { :some_value }
|
40
40
|
operation_tree =
|
41
|
-
SuperDiff::OperationTrees::CustomObject.new(
|
41
|
+
SuperDiff::Basic::OperationTrees::CustomObject.new(
|
42
42
|
[
|
43
43
|
double(
|
44
44
|
:operation,
|
@@ -146,7 +146,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::CustomObject do
|
|
146
146
|
expected = Array.new(3) { :some_value }
|
147
147
|
actual = Array.new(4) { :some_value }
|
148
148
|
operation_tree =
|
149
|
-
SuperDiff::OperationTrees::CustomObject.new(
|
149
|
+
SuperDiff::Basic::OperationTrees::CustomObject.new(
|
150
150
|
[
|
151
151
|
double(
|
152
152
|
:operation,
|
@@ -284,7 +284,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::CustomObject do
|
|
284
284
|
collection = Array.new(3) { :some_value }
|
285
285
|
subcollection = Array.new(2) { :some_value }
|
286
286
|
operation_tree =
|
287
|
-
SuperDiff::OperationTrees::CustomObject.new(
|
287
|
+
SuperDiff::Basic::OperationTrees::CustomObject.new(
|
288
288
|
[
|
289
289
|
double(
|
290
290
|
:operation,
|
@@ -304,7 +304,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::CustomObject do
|
|
304
304
|
right_key: :baz,
|
305
305
|
right_index: 1,
|
306
306
|
children:
|
307
|
-
SuperDiff::OperationTrees::CustomObject.new(
|
307
|
+
SuperDiff::Basic::OperationTrees::CustomObject.new(
|
308
308
|
[
|
309
309
|
double(
|
310
310
|
:operation,
|
@@ -435,7 +435,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::CustomObject do
|
|
435
435
|
.tap { |collection| collection << right_collection }
|
436
436
|
|
437
437
|
operation_tree =
|
438
|
-
SuperDiff::OperationTrees::CustomObject.new(
|
438
|
+
SuperDiff::Basic::OperationTrees::CustomObject.new(
|
439
439
|
[
|
440
440
|
double(
|
441
441
|
:operation,
|
@@ -536,7 +536,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::CustomObject do
|
|
536
536
|
Array.new(1) { :some_value }.tap { |coll| coll << right_subcollection }
|
537
537
|
|
538
538
|
operation_tree =
|
539
|
-
SuperDiff::OperationTrees::CustomObject.new(
|
539
|
+
SuperDiff::Basic::OperationTrees::CustomObject.new(
|
540
540
|
[
|
541
541
|
double(
|
542
542
|
:operation,
|
@@ -556,7 +556,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::CustomObject do
|
|
556
556
|
right_key: :baz,
|
557
557
|
right_index: 1,
|
558
558
|
children:
|
559
|
-
SuperDiff::OperationTrees::CustomObject.new(
|
559
|
+
SuperDiff::Basic::OperationTrees::CustomObject.new(
|
560
560
|
[
|
561
561
|
double(
|
562
562
|
:operation,
|
data/spec/unit/{operation_tree_flatteners → basic/operation_tree_flatteners}/default_object_spec.rb
RENAMED
@@ -1,10 +1,10 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
|
-
RSpec.describe SuperDiff::OperationTreeFlatteners::DefaultObject do
|
3
|
+
RSpec.describe SuperDiff::Basic::OperationTreeFlatteners::DefaultObject do
|
4
4
|
context "given an empty tree" do
|
5
5
|
it "returns a set of lines which are simply the open token and close token" do
|
6
6
|
operation_tree =
|
7
|
-
SuperDiff::OperationTrees::DefaultObject.new(
|
7
|
+
SuperDiff::Basic::OperationTrees::DefaultObject.new(
|
8
8
|
[],
|
9
9
|
underlying_object: underlying_object
|
10
10
|
)
|
@@ -38,7 +38,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::DefaultObject do
|
|
38
38
|
it "returns a series of lines from inspecting each value, creating multiple lines upon encountering inner data structures" do
|
39
39
|
collection = Array.new(3) { :some_value }
|
40
40
|
operation_tree =
|
41
|
-
SuperDiff::OperationTrees::DefaultObject.new(
|
41
|
+
SuperDiff::Basic::OperationTrees::DefaultObject.new(
|
42
42
|
[
|
43
43
|
double(
|
44
44
|
:operation,
|
@@ -146,7 +146,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::DefaultObject do
|
|
146
146
|
expected = Array.new(3) { :some_value }
|
147
147
|
actual = Array.new(4) { :some_value }
|
148
148
|
operation_tree =
|
149
|
-
SuperDiff::OperationTrees::DefaultObject.new(
|
149
|
+
SuperDiff::Basic::OperationTrees::DefaultObject.new(
|
150
150
|
[
|
151
151
|
double(
|
152
152
|
:operation,
|
@@ -284,7 +284,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::DefaultObject do
|
|
284
284
|
collection = Array.new(3) { :some_value }
|
285
285
|
subcollection = Array.new(2) { :some_value }
|
286
286
|
operation_tree =
|
287
|
-
SuperDiff::OperationTrees::DefaultObject.new(
|
287
|
+
SuperDiff::Basic::OperationTrees::DefaultObject.new(
|
288
288
|
[
|
289
289
|
double(
|
290
290
|
:operation,
|
@@ -304,7 +304,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::DefaultObject do
|
|
304
304
|
right_key: :baz,
|
305
305
|
right_index: 1,
|
306
306
|
children:
|
307
|
-
SuperDiff::OperationTrees::DefaultObject.new(
|
307
|
+
SuperDiff::Basic::OperationTrees::DefaultObject.new(
|
308
308
|
[
|
309
309
|
double(
|
310
310
|
:operation,
|
@@ -435,7 +435,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::DefaultObject do
|
|
435
435
|
.tap { |collection| collection << right_collection }
|
436
436
|
|
437
437
|
operation_tree =
|
438
|
-
SuperDiff::OperationTrees::DefaultObject.new(
|
438
|
+
SuperDiff::Basic::OperationTrees::DefaultObject.new(
|
439
439
|
[
|
440
440
|
double(
|
441
441
|
:operation,
|
@@ -536,7 +536,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::DefaultObject do
|
|
536
536
|
Array.new(1) { :some_value }.tap { |coll| coll << right_subcollection }
|
537
537
|
|
538
538
|
operation_tree =
|
539
|
-
SuperDiff::OperationTrees::DefaultObject.new(
|
539
|
+
SuperDiff::Basic::OperationTrees::DefaultObject.new(
|
540
540
|
[
|
541
541
|
double(
|
542
542
|
:operation,
|
@@ -556,7 +556,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::DefaultObject do
|
|
556
556
|
right_key: :baz,
|
557
557
|
right_index: 1,
|
558
558
|
children:
|
559
|
-
SuperDiff::OperationTrees::DefaultObject.new(
|
559
|
+
SuperDiff::Basic::OperationTrees::DefaultObject.new(
|
560
560
|
[
|
561
561
|
double(
|
562
562
|
:operation,
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
|
-
RSpec.describe SuperDiff::OperationTreeFlatteners::Hash do
|
3
|
+
RSpec.describe SuperDiff::Basic::OperationTreeFlatteners::Hash do
|
4
4
|
context "given an empty tree" do
|
5
5
|
it "returns a set of lines which are simply the open token and close token" do
|
6
6
|
expect(described_class.call([])).to match(
|
@@ -30,7 +30,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Hash do
|
|
30
30
|
it "returns a series of lines from inspecting each value, creating multiple lines upon encountering inner data structures" do
|
31
31
|
collection = Array.new(3) { :some_value }
|
32
32
|
operation_tree =
|
33
|
-
SuperDiff::OperationTrees::Hash.new(
|
33
|
+
SuperDiff::Basic::OperationTrees::Hash.new(
|
34
34
|
[
|
35
35
|
double(
|
36
36
|
:operation,
|
@@ -140,7 +140,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Hash do
|
|
140
140
|
expected = Array.new(3) { :some_value }
|
141
141
|
actual = Array.new(4) { :some_value }
|
142
142
|
operation_tree =
|
143
|
-
SuperDiff::OperationTrees::Hash.new(
|
143
|
+
SuperDiff::Basic::OperationTrees::Hash.new(
|
144
144
|
[
|
145
145
|
double(
|
146
146
|
:operation,
|
@@ -280,7 +280,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Hash do
|
|
280
280
|
collection = Array.new(3) { :some_value }
|
281
281
|
subcollection = Array.new(2) { :some_value }
|
282
282
|
operation_tree =
|
283
|
-
SuperDiff::OperationTrees::Hash.new(
|
283
|
+
SuperDiff::Basic::OperationTrees::Hash.new(
|
284
284
|
[
|
285
285
|
double(
|
286
286
|
:operation,
|
@@ -300,7 +300,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Hash do
|
|
300
300
|
right_key: :baz,
|
301
301
|
right_index: 1,
|
302
302
|
children:
|
303
|
-
SuperDiff::OperationTrees::Hash.new(
|
303
|
+
SuperDiff::Basic::OperationTrees::Hash.new(
|
304
304
|
[
|
305
305
|
double(
|
306
306
|
:operation,
|
@@ -429,7 +429,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Hash do
|
|
429
429
|
.tap { |collection| collection << right_collection }
|
430
430
|
|
431
431
|
operation_tree =
|
432
|
-
SuperDiff::OperationTrees::Hash.new(
|
432
|
+
SuperDiff::Basic::OperationTrees::Hash.new(
|
433
433
|
[
|
434
434
|
double(
|
435
435
|
:operation,
|
@@ -529,7 +529,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Hash do
|
|
529
529
|
Array.new(1) { :some_value }.tap { |coll| coll << right_subcollection }
|
530
530
|
|
531
531
|
operation_tree =
|
532
|
-
SuperDiff::OperationTrees::Hash.new(
|
532
|
+
SuperDiff::Basic::OperationTrees::Hash.new(
|
533
533
|
[
|
534
534
|
double(
|
535
535
|
:operation,
|
@@ -549,7 +549,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::Hash do
|
|
549
549
|
right_key: :baz,
|
550
550
|
right_index: 1,
|
551
551
|
children:
|
552
|
-
SuperDiff::OperationTrees::Hash.new(
|
552
|
+
SuperDiff::Basic::OperationTrees::Hash.new(
|
553
553
|
[
|
554
554
|
double(
|
555
555
|
:operation,
|
@@ -1,9 +1,9 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
|
-
RSpec.describe SuperDiff::OperationTreeFlatteners::MultilineString do
|
3
|
+
RSpec.describe SuperDiff::Basic::OperationTreeFlatteners::MultilineString do
|
4
4
|
context "given an empty tree" do
|
5
5
|
it "returns an empty set of lines" do
|
6
|
-
operation_tree = SuperDiff::OperationTrees::MultilineString.new([])
|
6
|
+
operation_tree = SuperDiff::Basic::OperationTrees::MultilineString.new([])
|
7
7
|
flattened_operation_tree = described_class.call(operation_tree)
|
8
8
|
expect(flattened_operation_tree).to eq([])
|
9
9
|
end
|
@@ -13,7 +13,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::MultilineString do
|
|
13
13
|
it "returns a series of lines from printing each value" do
|
14
14
|
collection = Array.new(3) { :some_value }
|
15
15
|
operation_tree =
|
16
|
-
SuperDiff::OperationTrees::MultilineString.new(
|
16
|
+
SuperDiff::Basic::OperationTrees::MultilineString.new(
|
17
17
|
[
|
18
18
|
double(
|
19
19
|
:operation,
|
@@ -73,7 +73,7 @@ RSpec.describe SuperDiff::OperationTreeFlatteners::MultilineString do
|
|
73
73
|
it "returns a series of lines from printing each value" do
|
74
74
|
collection = Array.new(3) { :some_value }
|
75
75
|
operation_tree =
|
76
|
-
SuperDiff::OperationTrees::MultilineString.new(
|
76
|
+
SuperDiff::Basic::OperationTrees::MultilineString.new(
|
77
77
|
[
|
78
78
|
double(
|
79
79
|
:operation,
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
|
-
RSpec.describe SuperDiff::Helpers do
|
3
|
+
RSpec.describe SuperDiff::Core::Helpers do
|
4
4
|
shared_examples "helper tests" do
|
5
5
|
describe "with_slice_of_array_replaced" do
|
6
6
|
context "if the given range covers the whole array" do
|
@@ -32,7 +32,7 @@ RSpec.describe SuperDiff::Helpers do
|
|
32
32
|
end
|
33
33
|
|
34
34
|
describe "object_address_for" do
|
35
|
-
if SuperDiff::Helpers.ruby_version_matches?(">= 2.7.0")
|
35
|
+
if SuperDiff::Core::Helpers.ruby_version_matches?(">= 2.7.0")
|
36
36
|
it "returns an empty string for Floats" do
|
37
37
|
expect(helper.object_address_for(1.0)).to eq("")
|
38
38
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
|
-
RSpec.describe SuperDiff::TieredLinesElider, type: :unit do
|
3
|
+
RSpec.describe SuperDiff::Core::TieredLinesElider, type: :unit do
|
4
4
|
context "and the gem is configured with :diff_elision_maximum" do
|
5
5
|
context "and :diff_elision_maximum is more than 0" do
|
6
6
|
context "and the line tree contains a section of noops that does not span more than the maximum" do
|
@@ -6299,7 +6299,7 @@ RSpec.describe SuperDiff::TieredLinesElider, type: :unit do
|
|
6299
6299
|
|
6300
6300
|
def an_actual_line(**args)
|
6301
6301
|
add_comma = args.delete(:add_comma?) { false }
|
6302
|
-
SuperDiff::Line.new(**args, add_comma: add_comma)
|
6302
|
+
SuperDiff::Core::Line.new(**args, add_comma: add_comma)
|
6303
6303
|
end
|
6304
6304
|
|
6305
6305
|
def an_expected_line(type:, indentation_level:, value:, children: [], **rest)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
|
-
RSpec.describe SuperDiff::TieredLinesFormatter, type: :unit do
|
3
|
+
RSpec.describe SuperDiff::Core::TieredLinesFormatter, type: :unit do
|
4
4
|
it "formats the given lines as an array of strings with appropriate colors and indentation" do
|
5
5
|
tiered_lines = [
|
6
6
|
line(type: :noop, indentation_level: 0, value: "["),
|
@@ -0,0 +1,176 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
# stree-ignore
|
4
|
+
common_constant_remappings = {
|
5
|
+
"SuperDiff::ColorizedDocumentExtensions" => "SuperDiff::Core::ColorizedDocumentExtensions",
|
6
|
+
"SuperDiff::Configuration" => "SuperDiff::Core::Configuration",
|
7
|
+
# TODO: Add back?
|
8
|
+
# "SuperDiff::DiffFormatters::Collection" => "SuperDiff::Basic::DiffFormatters::Collection",
|
9
|
+
# "SuperDiff::DiffFormatters::MultilineString" => "SuperDiff::Basic::DiffFormatters::MultilineString",
|
10
|
+
"SuperDiff::Differs::Array" => "SuperDiff::Basic::Differs::Array",
|
11
|
+
"SuperDiff::Differs::Base" => "SuperDiff::Core::AbstractDiffer",
|
12
|
+
"SuperDiff::Differs::CustomObject" => "SuperDiff::Basic::Differs::CustomObject",
|
13
|
+
"SuperDiff::Differs::DateLike" => "SuperDiff::Basic::Differs::DateLike",
|
14
|
+
"SuperDiff::Differs::DefaultObject" => "SuperDiff::Basic::Differs::DefaultObject",
|
15
|
+
"SuperDiff::Differs::Hash" => "SuperDiff::Basic::Differs::Hash",
|
16
|
+
"SuperDiff::Differs::MultilineString" => "SuperDiff::Basic::Differs::MultilineString",
|
17
|
+
"SuperDiff::Differs::TimeLike" => "SuperDiff::Basic::Differs::TimeLike",
|
18
|
+
"SuperDiff::Errors::NoDifferAvailableError" => "SuperDiff::Core::NoDifferAvailableError",
|
19
|
+
"SuperDiff::GemVersion" => "SuperDiff::Core::GemVersion",
|
20
|
+
"SuperDiff::Helpers" => "SuperDiff::Core::Helpers",
|
21
|
+
"SuperDiff::ImplementationChecks" => "SuperDiff::Core::ImplementationChecks",
|
22
|
+
"SuperDiff::Line" => "SuperDiff::Core::Line",
|
23
|
+
"SuperDiff::ObjectInspection::InspectionTree" => "SuperDiff::Core::InspectionTree",
|
24
|
+
"SuperDiff::ObjectInspection::InspectionTreeBuilders::Array" => "SuperDiff::Basic::InspectionTreeBuilders::Array",
|
25
|
+
"SuperDiff::ObjectInspection::InspectionTreeBuilders::Base" => "SuperDiff::Core::AbstractInspectionTreeBuilder",
|
26
|
+
"SuperDiff::ObjectInspection::InspectionTreeBuilders::CustomObject" => "SuperDiff::Basic::InspectionTreeBuilders::CustomObject",
|
27
|
+
"SuperDiff::ObjectInspection::InspectionTreeBuilders::DateLike" => "SuperDiff::Basic::InspectionTreeBuilders::DateLike",
|
28
|
+
"SuperDiff::ObjectInspection::InspectionTreeBuilders::DefaultObject" => "SuperDiff::Basic::InspectionTreeBuilders::DefaultObject",
|
29
|
+
"SuperDiff::ObjectInspection::InspectionTreeBuilders::Hash" => "SuperDiff::Basic::InspectionTreeBuilders::Hash",
|
30
|
+
"SuperDiff::ObjectInspection::InspectionTreeBuilders::Primitive" => "SuperDiff::Basic::InspectionTreeBuilders::Primitive",
|
31
|
+
"SuperDiff::ObjectInspection::InspectionTreeBuilders::TimeLike" => "SuperDiff::Basic::InspectionTreeBuilders::TimeLike",
|
32
|
+
"SuperDiff::ObjectInspection::Nodes::AsLinesWhenRenderingToLines" => "SuperDiff::Core::InspectionTreeNodes::AsLinesWhenRenderingToLines",
|
33
|
+
"SuperDiff::ObjectInspection::Nodes::AsPrefixWhenRenderingToLines" => "SuperDiff::Core::InspectionTreeNodes::AsPrefixWhenRenderingToLines",
|
34
|
+
"SuperDiff::ObjectInspection::Nodes::AsPreludeWhenRenderingToLines" => "SuperDiff::Core::InspectionTreeNodes::AsPreludeWhenRenderingToLines",
|
35
|
+
"SuperDiff::ObjectInspection::Nodes::AsSingleLine" => "SuperDiff::Core::InspectionTreeNodes::AsSingleLine",
|
36
|
+
"SuperDiff::ObjectInspection::Nodes::Base" => "SuperDiff::Core::InspectionTreeNodes::Base",
|
37
|
+
"SuperDiff::ObjectInspection::Nodes::Inspection" => "SuperDiff::Core::InspectionTreeNodes::Inspection",
|
38
|
+
"SuperDiff::ObjectInspection::Nodes::Nesting" => "SuperDiff::Core::InspectionTreeNodes::Nesting",
|
39
|
+
"SuperDiff::ObjectInspection::Nodes::OnlyWhen" => "SuperDiff::Core::InspectionTreeNodes::OnlyWhen",
|
40
|
+
"SuperDiff::ObjectInspection::Nodes::Text" => "SuperDiff::Core::InspectionTreeNodes::Text",
|
41
|
+
"SuperDiff::ObjectInspection::Nodes::WhenEmpty" => "SuperDiff::Core::InspectionTreeNodes::WhenEmpty",
|
42
|
+
"SuperDiff::ObjectInspection::Nodes::WhenNonEmpty" => "SuperDiff::Core::InspectionTreeNodes::WhenNonEmpty",
|
43
|
+
"SuperDiff::ObjectInspection::Nodes::WhenRenderingToLines" => "SuperDiff::Core::InspectionTreeNodes::WhenRenderingToLines",
|
44
|
+
"SuperDiff::ObjectInspection::Nodes::WhenRenderingToString" => "SuperDiff::Core::InspectionTreeNodes::WhenRenderingToString",
|
45
|
+
"SuperDiff::ObjectInspection::PrefixForNextNode" => "SuperDiff::Core::PrefixForNextInspectionTreeNode",
|
46
|
+
"SuperDiff::ObjectInspection::PreludeForNextNode" => "SuperDiff::Core::PreludeForNextInspectionTreeNode",
|
47
|
+
"SuperDiff::OperationTreeBuilders::Array" => "SuperDiff::Basic::OperationTreeBuilders::Array",
|
48
|
+
"SuperDiff::OperationTreeBuilders::Base" => "SuperDiff::Core::AbstractOperationTreeBuilder",
|
49
|
+
"SuperDiff::OperationTreeBuilders::CustomObject" => "SuperDiff::Basic::OperationTreeBuilders::CustomObject",
|
50
|
+
"SuperDiff::OperationTreeBuilders::DateLike" => "SuperDiff::Basic::OperationTreeBuilders::DateLike",
|
51
|
+
"SuperDiff::OperationTreeBuilders::DefaultObject" => "SuperDiff::Basic::OperationTreeBuilders::DefaultObject",
|
52
|
+
"SuperDiff::OperationTreeBuilders::Hash" => "SuperDiff::Basic::OperationTreeBuilders::Hash",
|
53
|
+
"SuperDiff::OperationTreeBuilders::MultilineString" => "SuperDiff::Basic::OperationTreeBuilders::MultilineString",
|
54
|
+
"SuperDiff::OperationTreeBuilders::TimeLike" => "SuperDiff::Basic::OperationTreeBuilders::TimeLike",
|
55
|
+
"SuperDiff::OperationTreeFlatteners::Array" => "SuperDiff::Basic::OperationTreeFlatteners::Array",
|
56
|
+
"SuperDiff::OperationTreeFlatteners::Base" => "SuperDiff::Core::AbstractOperationTreeFlattener",
|
57
|
+
"SuperDiff::OperationTreeFlatteners::Collection" => "SuperDiff::Basic::OperationTreeFlatteners::Collection",
|
58
|
+
"SuperDiff::OperationTreeFlatteners::CustomObject" => "SuperDiff::Basic::OperationTreeFlatteners::CustomObject",
|
59
|
+
"SuperDiff::OperationTreeFlatteners::DefaultObject" => "SuperDiff::Basic::OperationTreeFlatteners::DefaultObject",
|
60
|
+
"SuperDiff::OperationTreeFlatteners::Hash" => "SuperDiff::Basic::OperationTreeFlatteners::Hash",
|
61
|
+
"SuperDiff::OperationTreeFlatteners::MultilineString" => "SuperDiff::Basic::OperationTreeFlatteners::MultilineString",
|
62
|
+
"SuperDiff::OperationTrees::Array" => "SuperDiff::Basic::OperationTrees::Array",
|
63
|
+
"SuperDiff::OperationTrees::Base" => "SuperDiff::Core::AbstractOperationTree",
|
64
|
+
"SuperDiff::OperationTrees::CustomObject" => "SuperDiff::Basic::OperationTrees::CustomObject",
|
65
|
+
"SuperDiff::OperationTrees::DefaultObject" => "SuperDiff::Basic::OperationTrees::DefaultObject",
|
66
|
+
"SuperDiff::OperationTrees::Hash" => "SuperDiff::Basic::OperationTrees::Hash",
|
67
|
+
"SuperDiff::OperationTrees::MultilineString" => "SuperDiff::Basic::OperationTrees::MultilineString",
|
68
|
+
"SuperDiff::Operations::BinaryOperation" => "SuperDiff::Core::BinaryOperation",
|
69
|
+
"SuperDiff::Operations::UnaryOperation" => "SuperDiff::Core::UnaryOperation",
|
70
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::CollectionContainingExactly" => "SuperDiff::RSpec::InspectionTreeBuilders::CollectionContainingExactly",
|
71
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::CollectionIncluding" => "SuperDiff::RSpec::InspectionTreeBuilders::CollectionIncluding",
|
72
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::Double" => "SuperDiff::RSpec::InspectionTreeBuilders::Double",
|
73
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::GenericDescribableMatcher" => "SuperDiff::RSpec::InspectionTreeBuilders::GenericDescribableMatcher",
|
74
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::HashIncluding" => "SuperDiff::RSpec::InspectionTreeBuilders::HashIncluding",
|
75
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::InstanceOf" => "SuperDiff::RSpec::InspectionTreeBuilders::InstanceOf",
|
76
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::KindOf" => "SuperDiff::RSpec::InspectionTreeBuilders::KindOf",
|
77
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::ObjectHavingAttributes" => "SuperDiff::RSpec::InspectionTreeBuilders::ObjectHavingAttributes",
|
78
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::Primitive" => "SuperDiff::RSpec::InspectionTreeBuilders::Primitive",
|
79
|
+
"SuperDiff::RSpec::ObjectInspection::InspectionTreeBuilders::ValueWithin" => "SuperDiff::RSpec::InspectionTreeBuilders::ValueWithin",
|
80
|
+
"SuperDiff::RecursionGuard" => "SuperDiff::Core::RecursionGuard",
|
81
|
+
"SuperDiff::TieredLines" => "SuperDiff::Core::TieredLines",
|
82
|
+
"SuperDiff::TieredLinesElider" => "SuperDiff::Core::TieredLinesElider",
|
83
|
+
"SuperDiff::TieredLinesFormatter" => "SuperDiff::Core::TieredLinesFormatter",
|
84
|
+
}
|
85
|
+
|
86
|
+
# stree-ignore
|
87
|
+
active_record_constant_remappings = {
|
88
|
+
"SuperDiff::ActiveRecord::ObjectInspection::InspectionTreeBuilders::ActiveRecordModel" => "SuperDiff::ActiveRecord::InspectionTreeBuilders::ActiveRecordModel",
|
89
|
+
"SuperDiff::ActiveRecord::ObjectInspection::InspectionTreeBuilders::ActiveRecordRelation" => "SuperDiff::ActiveRecord::InspectionTreeBuilders::ActiveRecordRelation",
|
90
|
+
}
|
91
|
+
|
92
|
+
# stree-ignore
|
93
|
+
active_support_constant_remappings = {
|
94
|
+
"SuperDiff::ActiveSupport::ObjectInspection::InspectionTreeBuilders::HashWithIndifferentAccess" => "SuperDiff::ActiveSupport::InspectionTreeBuilders::HashWithIndifferentAccess",
|
95
|
+
"SuperDiff::ActiveSupport::ObjectInspection::InspectionTreeBuilders::OrderedOptions" => "SuperDiff::ActiveSupport::InspectionTreeBuilders::OrderedOptions",
|
96
|
+
}
|
97
|
+
|
98
|
+
common_constant_remappings.each do |old_constant_name, new_constant_name|
|
99
|
+
RSpec.describe old_constant_name, type: :unit do
|
100
|
+
it "maps to #{new_constant_name}" do
|
101
|
+
capture_warnings do
|
102
|
+
expect(Object.const_get(old_constant_name)).to be(
|
103
|
+
Object.const_get(new_constant_name)
|
104
|
+
)
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
108
|
+
it "points users to #{new_constant_name} instead" do
|
109
|
+
expect(old_constant_name).to be_deprecated_in_favor_of(new_constant_name)
|
110
|
+
end
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
active_record_constant_remappings.each do |old_constant_name, new_constant_name|
|
115
|
+
RSpec.describe old_constant_name, type: :unit, active_record: true do
|
116
|
+
it "maps to #{new_constant_name}" do
|
117
|
+
capture_warnings do
|
118
|
+
expect(Object.const_get(old_constant_name)).to be(
|
119
|
+
Object.const_get(new_constant_name)
|
120
|
+
)
|
121
|
+
end
|
122
|
+
end
|
123
|
+
|
124
|
+
it "points users to #{new_constant_name} instead" do
|
125
|
+
expect(old_constant_name).to be_deprecated_in_favor_of(new_constant_name)
|
126
|
+
end
|
127
|
+
end
|
128
|
+
end
|
129
|
+
|
130
|
+
active_support_constant_remappings.each do |old_constant_name, new_constant_name|
|
131
|
+
RSpec.describe old_constant_name, type: :unit, active_support: true do
|
132
|
+
it "maps to #{new_constant_name}" do
|
133
|
+
capture_warnings do
|
134
|
+
expect(Object.const_get(old_constant_name)).to be(
|
135
|
+
Object.const_get(new_constant_name)
|
136
|
+
)
|
137
|
+
end
|
138
|
+
end
|
139
|
+
|
140
|
+
it "points users to #{new_constant_name} instead" do
|
141
|
+
expect(old_constant_name).to be_deprecated_in_favor_of(new_constant_name)
|
142
|
+
end
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
RSpec.describe "SuperDiff::Differs::Main.call", type: :unit do
|
147
|
+
it "maps to SuperDiff.diff" do
|
148
|
+
capture_warnings do
|
149
|
+
diff_before = SuperDiff::Differs::Main.call(1, 2)
|
150
|
+
diff_after = SuperDiff.diff(1, 2)
|
151
|
+
expect(diff_before).to eq(diff_after)
|
152
|
+
end
|
153
|
+
end
|
154
|
+
end
|
155
|
+
|
156
|
+
RSpec.describe "SuperDiff::OperationTreeBuilders::Main.call", type: :unit do
|
157
|
+
it "maps to SuperDiff.build_operation_tree_for" do
|
158
|
+
capture_warnings do
|
159
|
+
operation_tree_builder_before =
|
160
|
+
SuperDiff::OperationTreeBuilders::Main.call(1, 2)
|
161
|
+
operation_tree_builder_after = SuperDiff.build_operation_tree_for(1, 2)
|
162
|
+
expect(operation_tree_builder_before).to eq(operation_tree_builder_after)
|
163
|
+
end
|
164
|
+
end
|
165
|
+
end
|
166
|
+
|
167
|
+
RSpec.describe "SuperDiff::OperationTrees::Main.call", type: :unit do
|
168
|
+
it "maps to SuperDiff.find_operation_tree_for" do
|
169
|
+
capture_warnings do
|
170
|
+
operation_tree_before =
|
171
|
+
SuperDiff::OperationTrees::Main.call(%i[foo bar baz])
|
172
|
+
operation_tree_after = SuperDiff.find_operation_tree_for(%i[foo bar baz])
|
173
|
+
expect(operation_tree_before).to eq(operation_tree_after)
|
174
|
+
end
|
175
|
+
end
|
176
|
+
end
|
@@ -1598,8 +1598,8 @@ RSpec.describe SuperDiff::EqualityMatchers::Main, type: :unit do
|
|
1598
1598
|
|
1599
1599
|
#{
|
1600
1600
|
colored do
|
1601
|
-
expected_line %(Expected: #<SuperDiff::Test::Player:#{SuperDiff::Helpers.object_address_for(expected)} @character="mirage", @handle="martymcfly", @health=0.3, @inventory=["flatline", "purple body shield"], @shields=0.6, @ultimate=0.8>)
|
1602
|
-
actual_line %( Actual: #<SuperDiff::Test::Player:#{SuperDiff::Helpers.object_address_for(actual)} @character="lifeline", @handle="docbrown", @health=0.3, @inventory=["wingman", "mastiff"], @shields=0.6, @ultimate=0.8>)
|
1601
|
+
expected_line %(Expected: #<SuperDiff::Test::Player:#{SuperDiff::Core::Helpers.object_address_for(expected)} @character="mirage", @handle="martymcfly", @health=0.3, @inventory=["flatline", "purple body shield"], @shields=0.6, @ultimate=0.8>)
|
1602
|
+
actual_line %( Actual: #<SuperDiff::Test::Player:#{SuperDiff::Core::Helpers.object_address_for(actual)} @character="lifeline", @handle="docbrown", @health=0.3, @inventory=["wingman", "mastiff"], @shields=0.6, @ultimate=0.8>)
|
1603
1603
|
end
|
1604
1604
|
}
|
1605
1605
|
|
@@ -1607,7 +1607,7 @@ RSpec.describe SuperDiff::EqualityMatchers::Main, type: :unit do
|
|
1607
1607
|
|
1608
1608
|
#{
|
1609
1609
|
colored do
|
1610
|
-
plain_line %( #<SuperDiff::Test::Player:#{SuperDiff::Helpers.object_address_for(actual)} {)
|
1610
|
+
plain_line %( #<SuperDiff::Test::Player:#{SuperDiff::Core::Helpers.object_address_for(actual)} {)
|
1611
1611
|
expected_line %(- @character="mirage",)
|
1612
1612
|
actual_line %(+ @character="lifeline",)
|
1613
1613
|
expected_line %(- @handle="martymcfly",)
|
@@ -1677,8 +1677,8 @@ RSpec.describe SuperDiff::EqualityMatchers::Main, type: :unit do
|
|
1677
1677
|
|
1678
1678
|
#{
|
1679
1679
|
colored do
|
1680
|
-
expected_line %(Expected: #<SuperDiff::Test::Item:#{SuperDiff::Helpers.object_address_for(expected)} @name="camera", @quantity=3>)
|
1681
|
-
actual_line %( Actual: #<SuperDiff::Test::Player:#{SuperDiff::Helpers.object_address_for(actual)} @character="Jon", @handle="mcmire", @health=4, @inventory=["sword"], @shields=11.4, @ultimate=true>)
|
1680
|
+
expected_line %(Expected: #<SuperDiff::Test::Item:#{SuperDiff::Core::Helpers.object_address_for(expected)} @name="camera", @quantity=3>)
|
1681
|
+
actual_line %( Actual: #<SuperDiff::Test::Player:#{SuperDiff::Core::Helpers.object_address_for(actual)} @character="Jon", @handle="mcmire", @health=4, @inventory=["sword"], @shields=11.4, @ultimate=true>)
|
1682
1682
|
end
|
1683
1683
|
}
|
1684
1684
|
STR
|
@@ -5,39 +5,71 @@ RSpec.describe "RSpec's `raise_error` matcher" do
|
|
5
5
|
context "given only an exception class" do
|
6
6
|
it "returns the correct output" do
|
7
7
|
expect(raise_error(RuntimeError).description).to eq(
|
8
|
-
"raise
|
8
|
+
"raise a kind of RuntimeError"
|
9
9
|
)
|
10
10
|
end
|
11
11
|
end
|
12
12
|
|
13
|
-
context "
|
13
|
+
context "given only a string message" do
|
14
14
|
it "returns the correct output" do
|
15
15
|
expect(raise_error("hell").description).to eq(
|
16
|
-
%|raise
|
16
|
+
%|raise a kind of Exception with message "hell"|
|
17
17
|
)
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
21
|
-
context "
|
21
|
+
context "given only a regexp message" do
|
22
22
|
it "returns the correct output" do
|
23
|
-
expect(raise_error(/hell/).description).to eq(
|
24
|
-
"raise
|
23
|
+
expect(raise_error(/hell/i).description).to eq(
|
24
|
+
"raise a kind of Exception with message matching /hell/i"
|
25
25
|
)
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
|
-
context "
|
29
|
+
context "given both an exception and string message" do
|
30
30
|
it "returns the correct output" do
|
31
31
|
expect(raise_error(RuntimeError, "hell").description).to eq(
|
32
|
-
%|raise
|
32
|
+
%|raise a kind of RuntimeError with message "hell"|
|
33
33
|
)
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
37
|
-
context "
|
37
|
+
context "given both an exception and regexp message" do
|
38
38
|
it "returns the correct output" do
|
39
|
-
expect(raise_error(RuntimeError, /hell/).description).to eq(
|
40
|
-
"raise
|
39
|
+
expect(raise_error(RuntimeError, /hell/i).description).to eq(
|
40
|
+
"raise a kind of RuntimeError with message matching /hell/i"
|
41
|
+
)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
context "given a simple RSpec matcher" do
|
46
|
+
it "returns the correct output" do
|
47
|
+
expect(raise_error(a_kind_of(RuntimeError)).description).to eq(
|
48
|
+
"raise #<a kind of RuntimeError>"
|
49
|
+
)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
context "given a simple RSpec matcher and string message" do
|
54
|
+
it "returns the correct output" do
|
55
|
+
expect(raise_error(a_kind_of(RuntimeError), "boo").description).to eq(
|
56
|
+
'raise #<a kind of RuntimeError> with message "boo"'
|
57
|
+
)
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
context "given a simple RSpec matcher and regexp message" do
|
62
|
+
it "returns the correct output" do
|
63
|
+
expect(raise_error(a_kind_of(RuntimeError), /boo/i).description).to eq(
|
64
|
+
"raise #<a kind of RuntimeError> with message matching /boo/i"
|
65
|
+
)
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
context "given a compound RSpec matcher" do
|
70
|
+
it "returns the correct output" do
|
71
|
+
expect(raise_error(a_kind_of(Array).or eq(true)).description).to eq(
|
72
|
+
"raise #<a kind of Array or eq true>"
|
41
73
|
)
|
42
74
|
end
|
43
75
|
end
|