Skip to content

Commit 042e8ec

Browse files
committed
Simplify color configuration
* Use `attr_accessor`s instead of `set_` methods to prepare for upcoming elision settings * Rename all instances of `alpha` to `expected` and `beta` to `actual` across the tests and code * Adjust alignment in places in tests where colors are used so they're easier to read
1 parent b5f5dc7 commit 042e8ec

36 files changed

+2337
-2359
lines changed

lib/super_diff/colorized_document_extensions.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@ def self.extended(extendee)
66
end
77
end
88

9-
def alpha(*args, **opts, &block)
10-
colorize(*args, **opts, fg: SuperDiff.configuration.alpha_color, &block)
9+
def expected(*args, **opts, &block)
10+
colorize(*args, **opts, fg: SuperDiff.configuration.expected_color, &block)
1111
end
1212

13-
def beta(*args, **opts, &block)
14-
colorize(*args, **opts, fg: SuperDiff.configuration.beta_color, &block)
13+
def actual(*args, **opts, &block)
14+
colorize(*args, **opts, fg: SuperDiff.configuration.actual_color, &block)
1515
end
1616
end
1717
end

lib/super_diff/configuration.rb

Lines changed: 26 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,31 @@
11
module SuperDiff
22
class Configuration
33
attr_reader(
4+
:extra_diff_formatter_classes,
45
:extra_differ_classes,
6+
:extra_inspector_classes,
57
:extra_operation_tree_builder_classes,
68
:extra_operation_tree_classes,
7-
:extra_diff_formatter_classes,
8-
:extra_inspector_classes,
9-
:alpha_color,
10-
:beta_color,
9+
)
10+
attr_accessor(
11+
:actual_color,
1112
:border_color,
13+
:expected_color,
1214
:header_color,
1315
)
1416

1517
def initialize
18+
@actual_color = :yellow
19+
@border_color = :blue
20+
@expected_color = :magenta
21+
@extra_diff_formatter_classes = [].freeze
1622
@extra_differ_classes = [].freeze
23+
@extra_inspector_classes = [].freeze
1724
@extra_operation_tree_builder_classes = [].freeze
1825
@extra_operation_tree_classes = [].freeze
19-
@extra_diff_formatter_classes = [].freeze
20-
@extra_inspector_classes = [].freeze
21-
@alpha_color = :magenta
22-
@beta_color = :yellow
23-
@border_color = :blue
2426
@header_color = :white
2527
end
2628

27-
def add_extra_differ_classes(*classes)
28-
@extra_differ_classes = (@extra_differ_classes + classes).freeze
29-
end
30-
alias_method :add_extra_differ_class, :add_extra_differ_classes
31-
32-
def add_extra_operation_tree_builder_classes(*classes)
33-
@extra_operation_tree_builder_classes =
34-
(@extra_operation_tree_builder_classes + classes).freeze
35-
end
36-
alias_method(
37-
:add_extra_operation_tree_builder_class,
38-
:add_extra_operation_tree_builder_classes,
39-
)
40-
41-
def add_extra_operation_tree_classes(*classes)
42-
@extra_operation_tree_classes =
43-
(@extra_operation_tree_classes + classes).freeze
44-
end
45-
alias_method(
46-
:add_extra_operation_tree_class,
47-
:add_extra_operation_tree_classes,
48-
)
49-
5029
def add_extra_diff_formatter_classes(*classes)
5130
@extra_diff_formatter_classes =
5231
(@extra_diff_formatter_classes + classes).freeze
@@ -56,6 +35,11 @@ def add_extra_diff_formatter_classes(*classes)
5635
:add_extra_diff_formatter_classes,
5736
)
5837

38+
def add_extra_differ_classes(*classes)
39+
@extra_differ_classes = (@extra_differ_classes + classes).freeze
40+
end
41+
alias_method :add_extra_differ_class, :add_extra_differ_classes
42+
5943
def add_extra_inspector_classes(*classes)
6044
@extra_inspector_classes =
6145
(@extra_inspector_classes + classes).freeze
@@ -65,28 +49,22 @@ def add_extra_inspector_classes(*classes)
6549
:add_extra_inspector_classes,
6650
)
6751

68-
def set_alpha_color(color)
69-
@alpha_color = color
52+
def add_extra_operation_tree_builder_classes(*classes)
53+
@extra_operation_tree_builder_classes =
54+
(@extra_operation_tree_builder_classes + classes).freeze
7055
end
7156
alias_method(
72-
:set_expected_color,
73-
:set_alpha_color
57+
:add_extra_operation_tree_builder_class,
58+
:add_extra_operation_tree_builder_classes,
7459
)
7560

76-
def set_beta_color(color)
77-
@beta_color = color
61+
def add_extra_operation_tree_classes(*classes)
62+
@extra_operation_tree_classes =
63+
(@extra_operation_tree_classes + classes).freeze
7864
end
7965
alias_method(
80-
:set_actual_color,
81-
:set_beta_color
66+
:add_extra_operation_tree_class,
67+
:add_extra_operation_tree_classes,
8268
)
83-
84-
def set_border_color(color)
85-
@border_color = color
86-
end
87-
88-
def set_header_color(color)
89-
@header_color = color
90-
end
9169
end
9270
end

lib/super_diff/diff_formatters/collection.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ class Collection
44
extend AttrExtras.mixin
55

66
ICONS = { delete: "-", insert: "+" }.freeze
7-
STYLES = { insert: :beta, delete: :alpha, noop: :plain }.freeze
7+
STYLES = { insert: :actual, delete: :expected, noop: :plain }.freeze
88

99
method_object(
1010
[

lib/super_diff/diff_formatters/multiline_string.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@ def lines
1515
operation_tree.reduce([]) do |array, operation|
1616
case operation.name
1717
when :change
18-
array << Helpers.style(:alpha, "- #{operation.left_value}")
19-
array << Helpers.style(:beta, "+ #{operation.right_value}")
18+
array << Helpers.style(:expected, "- #{operation.left_value}")
19+
array << Helpers.style(:actual, "+ #{operation.right_value}")
2020
when :delete
21-
array << Helpers.style(:alpha, "- #{operation.value}")
21+
array << Helpers.style(:expected, "- #{operation.value}")
2222
when :insert
23-
array << Helpers.style(:beta, "+ #{operation.value}")
23+
array << Helpers.style(:actual, "+ #{operation.value}")
2424
else
2525
array << Helpers.style(:plain, " #{operation.value}")
2626
end

lib/super_diff/equality_matchers/array.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ def fail
1111
1212
#{
1313
Helpers.style(
14-
:alpha,
14+
:expected,
1515
"Expected: " +
1616
ObjectInspection.inspect(expected, as_single_line: true),
1717
)
1818
}
1919
#{
2020
Helpers.style(
21-
:beta,
21+
:actual,
2222
" Actual: " +
2323
ObjectInspection.inspect(actual, as_single_line: true),
2424
)

lib/super_diff/equality_matchers/default.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,15 @@ def fail
1919

2020
def expected_line
2121
Helpers.style(
22-
:alpha,
22+
:expected,
2323
"Expected: " +
2424
ObjectInspection.inspect(expected, as_single_line: true),
2525
)
2626
end
2727

2828
def actual_line
2929
Helpers.style(
30-
:beta,
30+
:actual,
3131
" Actual: " +
3232
ObjectInspection.inspect(actual, as_single_line: true),
3333
)

lib/super_diff/equality_matchers/hash.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ def fail
1111
1212
#{
1313
Helpers.style(
14-
:alpha,
14+
:expected,
1515
"Expected: " +
1616
ObjectInspection.inspect(expected, as_single_line: true),
1717
)
1818
}
1919
#{
2020
Helpers.style(
21-
:beta,
21+
:actual,
2222
" Actual: " +
2323
ObjectInspection.inspect(actual, as_single_line: true),
2424
)

lib/super_diff/equality_matchers/multiline_string.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@ def fail
1212
#{
1313
# TODO: This whole thing should not be red or green, just the values
1414
Helpers.style(
15-
:alpha,
15+
:expected,
1616
"Expected: " +
1717
ObjectInspection.inspect(expected, as_single_line: true),
1818
)
1919
}
2020
#{
2121
Helpers.style(
22-
:beta,
22+
:actual,
2323
" Actual: " +
2424
ObjectInspection.inspect(actual, as_single_line: true),
2525
)

lib/super_diff/equality_matchers/primitive.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,14 @@ def fail
1515
1616
#{
1717
Helpers.style(
18-
:alpha,
18+
:expected,
1919
"Expected: " +
2020
ObjectInspection.inspect(expected, as_single_line: true),
2121
)
2222
}
2323
#{
2424
Helpers.style(
25-
:beta,
25+
:actual,
2626
" Actual: " +
2727
ObjectInspection.inspect(actual, as_single_line: true),
2828
)

lib/super_diff/equality_matchers/singleline_string.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ def fail
1111
1212
#{
1313
Helpers.style(
14-
:alpha,
14+
:expected,
1515
"Expected: " +
1616
ObjectInspection.inspect(expected, as_single_line: true),
1717
)
1818
}
1919
#{
2020
Helpers.style(
21-
:beta,
21+
:actual,
2222
" Actual: " +
2323
ObjectInspection.inspect(actual, as_single_line: true),
2424
)

0 commit comments

Comments
 (0)