Skip to content

Commit 960c3cc

Browse files
authored
Merge pull request #103 from apelisse/remove-compare-merge
Remove merge from Compare
2 parents 6149e45 + 0ef7c4e commit 960c3cc

File tree

4 files changed

+7
-16
lines changed

4 files changed

+7
-16
lines changed
Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,2 @@
1-
- Merged Object:
2-
{types=[{name="scalar";scalar="numeric"}]}
31
- Modified Fields:
42
.types[name="scalar"].scalar

typed/deduced_test.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -466,7 +466,6 @@ func TestSymdiffDeduced(t *testing.T) {
466466
if err != nil {
467467
t.Fatalf("got validation errors: %v", err)
468468
}
469-
t.Logf("got merged:\n%s\n", got.Merged.AsValue())
470469
t.Logf("got added:\n%s\n", got.Added)
471470
if !got.Added.Equals(quint.added) {
472471
t.Errorf("Expected added:\n%s\n", quint.added)

typed/symdiff_test.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -531,7 +531,6 @@ func (tt symdiffTestCase) test(t *testing.T) {
531531
if err != nil {
532532
t.Fatalf("got validation errors: %v", err)
533533
}
534-
t.Logf("got merged:\n%s\n", got.Merged.AsValue())
535534
t.Logf("got added:\n%s\n", got.Added)
536535
if !got.Added.Equals(quint.added) {
537536
t.Errorf("Expected added:\n%s\n", quint.added)

typed/typed.go

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package typed
1818

1919
import (
2020
"fmt"
21+
"strings"
2122
"sync"
2223

2324
"sigs.k8s.io/structured-merge-diff/fieldpath"
@@ -116,7 +117,7 @@ func (tv TypedValue) Compare(rhs *TypedValue) (c *Comparison, err error) {
116117
Modified: fieldpath.NewSet(),
117118
Added: fieldpath.NewSet(),
118119
}
119-
c.Merged, err = merge(&tv, rhs, func(w *mergingWalker) {
120+
_, err = merge(&tv, rhs, func(w *mergingWalker) {
120121
if w.lhs == nil {
121122
c.Added.Insert(w.path)
122123
} else if w.rhs == nil {
@@ -126,8 +127,6 @@ func (tv TypedValue) Compare(rhs *TypedValue) (c *Comparison, err error) {
126127
// Need to implement equality check on the value type.
127128
c.Modified.Insert(w.path)
128129
}
129-
130-
ruleKeepRHS(w)
131130
}, func(w *mergingWalker) {
132131
if w.lhs == nil {
133132
c.Added.Insert(w.path)
@@ -268,10 +267,6 @@ func merge(lhs, rhs *TypedValue, rule, postRule mergeRule) (*TypedValue, error)
268267
// No field will appear in more than one of the three fieldsets. If all of the
269268
// fieldsets are empty, then the objects must have been equal.
270269
type Comparison struct {
271-
// Merged is the result of merging the two objects, as explained in the
272-
// comments on TypedValue.Merge().
273-
Merged *TypedValue
274-
275270
// Removed contains any fields removed by rhs (the right-hand-side
276271
// object in the comparison).
277272
Removed *fieldpath.Set
@@ -289,15 +284,15 @@ func (c *Comparison) IsSame() bool {
289284

290285
// String returns a human readable version of the comparison.
291286
func (c *Comparison) String() string {
292-
str := fmt.Sprintf("- Merged Object:\n%v\n", c.Merged.AsValue())
287+
bld := strings.Builder{}
293288
if !c.Modified.Empty() {
294-
str += fmt.Sprintf("- Modified Fields:\n%v\n", c.Modified)
289+
bld.WriteString(fmt.Sprintf("- Modified Fields:\n%v\n", c.Modified))
295290
}
296291
if !c.Added.Empty() {
297-
str += fmt.Sprintf("- Added Fields:\n%v\n", c.Added)
292+
bld.WriteString(fmt.Sprintf("- Added Fields:\n%v\n", c.Added))
298293
}
299294
if !c.Removed.Empty() {
300-
str += fmt.Sprintf("- Removed Fields:\n%v\n", c.Removed)
295+
bld.WriteString(fmt.Sprintf("- Removed Fields:\n%v\n", c.Removed))
301296
}
302-
return str
297+
return bld.String()
303298
}

0 commit comments

Comments
 (0)