1*88d15eacSSasha Smundak<<< TestDiff/Comparer/StructInequal 2*88d15eacSSasha Smundak struct{ A int; B int; C int }{ 3*88d15eacSSasha Smundak A: 1, 4*88d15eacSSasha Smundak B: 2, 5*88d15eacSSasha Smundak- C: 3, 6*88d15eacSSasha Smundak+ C: 4, 7*88d15eacSSasha Smundak } 8*88d15eacSSasha Smundak>>> TestDiff/Comparer/StructInequal 9*88d15eacSSasha Smundak<<< TestDiff/Comparer/PointerStructInequal 10*88d15eacSSasha Smundak &struct{ A *int }{ 11*88d15eacSSasha Smundak- A: &4, 12*88d15eacSSasha Smundak+ A: &5, 13*88d15eacSSasha Smundak } 14*88d15eacSSasha Smundak>>> TestDiff/Comparer/PointerStructInequal 15*88d15eacSSasha Smundak<<< TestDiff/Comparer/StructNestedPointerInequal 16*88d15eacSSasha Smundak &struct{ R *bytes.Buffer }{ 17*88d15eacSSasha Smundak- R: s"", 18*88d15eacSSasha Smundak+ R: nil, 19*88d15eacSSasha Smundak } 20*88d15eacSSasha Smundak>>> TestDiff/Comparer/StructNestedPointerInequal 21*88d15eacSSasha Smundak<<< TestDiff/Comparer/RegexpInequal 22*88d15eacSSasha Smundak []*regexp.Regexp{ 23*88d15eacSSasha Smundak nil, 24*88d15eacSSasha Smundak- s"a*b*c*", 25*88d15eacSSasha Smundak+ s"a*b*d*", 26*88d15eacSSasha Smundak } 27*88d15eacSSasha Smundak>>> TestDiff/Comparer/RegexpInequal 28*88d15eacSSasha Smundak<<< TestDiff/Comparer/TriplePointerInequal 29*88d15eacSSasha Smundak &&&int( 30*88d15eacSSasha Smundak- 0, 31*88d15eacSSasha Smundak+ 1, 32*88d15eacSSasha Smundak ) 33*88d15eacSSasha Smundak>>> TestDiff/Comparer/TriplePointerInequal 34*88d15eacSSasha Smundak<<< TestDiff/Comparer/StringerInequal 35*88d15eacSSasha Smundak struct{ fmt.Stringer }( 36*88d15eacSSasha Smundak- s"hello", 37*88d15eacSSasha Smundak+ s"hello2", 38*88d15eacSSasha Smundak ) 39*88d15eacSSasha Smundak>>> TestDiff/Comparer/StringerInequal 40*88d15eacSSasha Smundak<<< TestDiff/Comparer/DifferingHash 41*88d15eacSSasha Smundak [32]uint8{ 42*88d15eacSSasha Smundak- 0xca, 0x97, 0x81, 0x12, 0xca, 0x1b, 0xbd, 0xca, 0xfa, 0xc2, 0x31, 0xb3, 0x9a, 0x23, 0xdc, 0x4d, 43*88d15eacSSasha Smundak- 0xa7, 0x86, 0xef, 0xf8, 0x14, 0x7c, 0x4e, 0x72, 0xb9, 0x80, 0x77, 0x85, 0xaf, 0xee, 0x48, 0xbb, 44*88d15eacSSasha Smundak+ 0x3e, 0x23, 0xe8, 0x16, 0x00, 0x39, 0x59, 0x4a, 0x33, 0x89, 0x4f, 0x65, 0x64, 0xe1, 0xb1, 0x34, 45*88d15eacSSasha Smundak+ 0x8b, 0xbd, 0x7a, 0x00, 0x88, 0xd4, 0x2c, 0x4a, 0xcb, 0x73, 0xee, 0xae, 0xd5, 0x9c, 0x00, 0x9d, 46*88d15eacSSasha Smundak } 47*88d15eacSSasha Smundak>>> TestDiff/Comparer/DifferingHash 48*88d15eacSSasha Smundak<<< TestDiff/Comparer/NilStringer 49*88d15eacSSasha Smundak any( 50*88d15eacSSasha Smundak- &fmt.Stringer(nil), 51*88d15eacSSasha Smundak ) 52*88d15eacSSasha Smundak>>> TestDiff/Comparer/NilStringer 53*88d15eacSSasha Smundak<<< TestDiff/Comparer/TarHeaders 54*88d15eacSSasha Smundak []cmp_test.tarHeader{ 55*88d15eacSSasha Smundak { 56*88d15eacSSasha Smundak ... // 4 identical fields 57*88d15eacSSasha Smundak Size: 1, 58*88d15eacSSasha Smundak ModTime: s"2009-11-10 23:00:00 +0000 UTC", 59*88d15eacSSasha Smundak- Typeflag: 48, 60*88d15eacSSasha Smundak+ Typeflag: 0, 61*88d15eacSSasha Smundak Linkname: "", 62*88d15eacSSasha Smundak Uname: "user", 63*88d15eacSSasha Smundak ... // 6 identical fields 64*88d15eacSSasha Smundak }, 65*88d15eacSSasha Smundak { 66*88d15eacSSasha Smundak ... // 4 identical fields 67*88d15eacSSasha Smundak Size: 2, 68*88d15eacSSasha Smundak ModTime: s"2009-11-11 00:00:00 +0000 UTC", 69*88d15eacSSasha Smundak- Typeflag: 48, 70*88d15eacSSasha Smundak+ Typeflag: 0, 71*88d15eacSSasha Smundak Linkname: "", 72*88d15eacSSasha Smundak Uname: "user", 73*88d15eacSSasha Smundak ... // 6 identical fields 74*88d15eacSSasha Smundak }, 75*88d15eacSSasha Smundak { 76*88d15eacSSasha Smundak ... // 4 identical fields 77*88d15eacSSasha Smundak Size: 4, 78*88d15eacSSasha Smundak ModTime: s"2009-11-11 01:00:00 +0000 UTC", 79*88d15eacSSasha Smundak- Typeflag: 48, 80*88d15eacSSasha Smundak+ Typeflag: 0, 81*88d15eacSSasha Smundak Linkname: "", 82*88d15eacSSasha Smundak Uname: "user", 83*88d15eacSSasha Smundak ... // 6 identical fields 84*88d15eacSSasha Smundak }, 85*88d15eacSSasha Smundak { 86*88d15eacSSasha Smundak ... // 4 identical fields 87*88d15eacSSasha Smundak Size: 8, 88*88d15eacSSasha Smundak ModTime: s"2009-11-11 02:00:00 +0000 UTC", 89*88d15eacSSasha Smundak- Typeflag: 48, 90*88d15eacSSasha Smundak+ Typeflag: 0, 91*88d15eacSSasha Smundak Linkname: "", 92*88d15eacSSasha Smundak Uname: "user", 93*88d15eacSSasha Smundak ... // 6 identical fields 94*88d15eacSSasha Smundak }, 95*88d15eacSSasha Smundak { 96*88d15eacSSasha Smundak ... // 4 identical fields 97*88d15eacSSasha Smundak Size: 16, 98*88d15eacSSasha Smundak ModTime: s"2009-11-11 03:00:00 +0000 UTC", 99*88d15eacSSasha Smundak- Typeflag: 48, 100*88d15eacSSasha Smundak+ Typeflag: 0, 101*88d15eacSSasha Smundak Linkname: "", 102*88d15eacSSasha Smundak Uname: "user", 103*88d15eacSSasha Smundak ... // 6 identical fields 104*88d15eacSSasha Smundak }, 105*88d15eacSSasha Smundak } 106*88d15eacSSasha Smundak>>> TestDiff/Comparer/TarHeaders 107*88d15eacSSasha Smundak<<< TestDiff/Comparer/IrreflexiveComparison 108*88d15eacSSasha Smundak []int{ 109*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 110*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 111*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 112*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 113*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 114*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 115*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 116*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 117*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 118*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 119*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 120*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 121*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 122*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 123*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 124*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 125*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 126*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 127*88d15eacSSasha Smundak- Inverse(λ, float64(NaN)), 128*88d15eacSSasha Smundak+ Inverse(λ, float64(NaN)), 129*88d15eacSSasha Smundak } 130*88d15eacSSasha Smundak>>> TestDiff/Comparer/IrreflexiveComparison 131*88d15eacSSasha Smundak<<< TestDiff/Comparer/StringerMapKey 132*88d15eacSSasha Smundak map[*testprotos.Stringer]*testprotos.Stringer( 133*88d15eacSSasha Smundak- {s"hello": s"world"}, 134*88d15eacSSasha Smundak+ nil, 135*88d15eacSSasha Smundak ) 136*88d15eacSSasha Smundak>>> TestDiff/Comparer/StringerMapKey 137*88d15eacSSasha Smundak<<< TestDiff/Comparer/StringerBacktick 138*88d15eacSSasha Smundak any( 139*88d15eacSSasha Smundak- []*testprotos.Stringer{s`multi\nline\nline\nline`}, 140*88d15eacSSasha Smundak ) 141*88d15eacSSasha Smundak>>> TestDiff/Comparer/StringerBacktick 142*88d15eacSSasha Smundak<<< TestDiff/Comparer/DynamicMap 143*88d15eacSSasha Smundak []any{ 144*88d15eacSSasha Smundak map[string]any{ 145*88d15eacSSasha Smundak "avg": float64(0.278), 146*88d15eacSSasha Smundak- "hr": int(65), 147*88d15eacSSasha Smundak+ "hr": float64(65), 148*88d15eacSSasha Smundak "name": string("Mark McGwire"), 149*88d15eacSSasha Smundak }, 150*88d15eacSSasha Smundak map[string]any{ 151*88d15eacSSasha Smundak "avg": float64(0.288), 152*88d15eacSSasha Smundak- "hr": int(63), 153*88d15eacSSasha Smundak+ "hr": float64(63), 154*88d15eacSSasha Smundak "name": string("Sammy Sosa"), 155*88d15eacSSasha Smundak }, 156*88d15eacSSasha Smundak } 157*88d15eacSSasha Smundak>>> TestDiff/Comparer/DynamicMap 158*88d15eacSSasha Smundak<<< TestDiff/Comparer/MapKeyPointer 159*88d15eacSSasha Smundak map[*int]string{ 160*88d15eacSSasha Smundak- &⟪0xdeadf00f⟫0: "hello", 161*88d15eacSSasha Smundak+ &⟪0xdeadf00f⟫0: "world", 162*88d15eacSSasha Smundak } 163*88d15eacSSasha Smundak>>> TestDiff/Comparer/MapKeyPointer 164*88d15eacSSasha Smundak<<< TestDiff/Comparer/IgnoreSliceElements 165*88d15eacSSasha Smundak [2][]int{ 166*88d15eacSSasha Smundak {..., 1, 2, 3, ...}, 167*88d15eacSSasha Smundak { 168*88d15eacSSasha Smundak ... // 6 ignored and 1 identical elements 169*88d15eacSSasha Smundak- 20, 170*88d15eacSSasha Smundak+ 2, 171*88d15eacSSasha Smundak ... // 3 ignored elements 172*88d15eacSSasha Smundak }, 173*88d15eacSSasha Smundak } 174*88d15eacSSasha Smundak>>> TestDiff/Comparer/IgnoreSliceElements 175*88d15eacSSasha Smundak<<< TestDiff/Comparer/IgnoreMapEntries 176*88d15eacSSasha Smundak [2]map[string]int{ 177*88d15eacSSasha Smundak {"KEEP3": 3, "keep1": 1, "keep2": 2, ...}, 178*88d15eacSSasha Smundak { 179*88d15eacSSasha Smundak ... // 2 ignored entries 180*88d15eacSSasha Smundak "keep1": 1, 181*88d15eacSSasha Smundak+ "keep2": 2, 182*88d15eacSSasha Smundak }, 183*88d15eacSSasha Smundak } 184*88d15eacSSasha Smundak>>> TestDiff/Comparer/IgnoreMapEntries 185*88d15eacSSasha Smundak<<< TestDiff/Transformer/Uints 186*88d15eacSSasha Smundak uint8(Inverse(λ, uint16(Inverse(λ, uint32(Inverse(λ, uint64( 187*88d15eacSSasha Smundak- 0, 188*88d15eacSSasha Smundak+ 1, 189*88d15eacSSasha Smundak ))))))) 190*88d15eacSSasha Smundak>>> TestDiff/Transformer/Uints 191*88d15eacSSasha Smundak<<< TestDiff/Transformer/Filtered 192*88d15eacSSasha Smundak []int{ 193*88d15eacSSasha Smundak Inverse(λ, int64(0)), 194*88d15eacSSasha Smundak- Inverse(λ, int64(-5)), 195*88d15eacSSasha Smundak+ Inverse(λ, int64(3)), 196*88d15eacSSasha Smundak Inverse(λ, int64(0)), 197*88d15eacSSasha Smundak- Inverse(λ, int64(-1)), 198*88d15eacSSasha Smundak+ Inverse(λ, int64(-5)), 199*88d15eacSSasha Smundak } 200*88d15eacSSasha Smundak>>> TestDiff/Transformer/Filtered 201*88d15eacSSasha Smundak<<< TestDiff/Transformer/DisjointOutput 202*88d15eacSSasha Smundak int(Inverse(λ, any( 203*88d15eacSSasha Smundak- string("zero"), 204*88d15eacSSasha Smundak+ float64(1), 205*88d15eacSSasha Smundak ))) 206*88d15eacSSasha Smundak>>> TestDiff/Transformer/DisjointOutput 207*88d15eacSSasha Smundak<<< TestDiff/Transformer/JSON 208*88d15eacSSasha Smundak string(Inverse(ParseJSON, map[string]any{ 209*88d15eacSSasha Smundak "address": map[string]any{ 210*88d15eacSSasha Smundak- "city": string("Los Angeles"), 211*88d15eacSSasha Smundak+ "city": string("New York"), 212*88d15eacSSasha Smundak "postalCode": string("10021-3100"), 213*88d15eacSSasha Smundak- "state": string("CA"), 214*88d15eacSSasha Smundak+ "state": string("NY"), 215*88d15eacSSasha Smundak "streetAddress": string("21 2nd Street"), 216*88d15eacSSasha Smundak }, 217*88d15eacSSasha Smundak "age": float64(25), 218*88d15eacSSasha Smundak "children": []any{}, 219*88d15eacSSasha Smundak "firstName": string("John"), 220*88d15eacSSasha Smundak "isAlive": bool(true), 221*88d15eacSSasha Smundak "lastName": string("Smith"), 222*88d15eacSSasha Smundak "phoneNumbers": []any{ 223*88d15eacSSasha Smundak map[string]any{ 224*88d15eacSSasha Smundak- "number": string("212 555-4321"), 225*88d15eacSSasha Smundak+ "number": string("212 555-1234"), 226*88d15eacSSasha Smundak "type": string("home"), 227*88d15eacSSasha Smundak }, 228*88d15eacSSasha Smundak map[string]any{"number": string("646 555-4567"), "type": string("office")}, 229*88d15eacSSasha Smundak map[string]any{"number": string("123 456-7890"), "type": string("mobile")}, 230*88d15eacSSasha Smundak }, 231*88d15eacSSasha Smundak+ "spouse": nil, 232*88d15eacSSasha Smundak })) 233*88d15eacSSasha Smundak>>> TestDiff/Transformer/JSON 234*88d15eacSSasha Smundak<<< TestDiff/Transformer/AcyclicString 235*88d15eacSSasha Smundak cmp_test.StringBytes{ 236*88d15eacSSasha Smundak String: Inverse(SplitString, []string{ 237*88d15eacSSasha Smundak "some", 238*88d15eacSSasha Smundak "multi", 239*88d15eacSSasha Smundak- "Line", 240*88d15eacSSasha Smundak+ "line", 241*88d15eacSSasha Smundak "string", 242*88d15eacSSasha Smundak }), 243*88d15eacSSasha Smundak Bytes: []uint8(Inverse(SplitBytes, [][]uint8{ 244*88d15eacSSasha Smundak "some", 245*88d15eacSSasha Smundak "multi", 246*88d15eacSSasha Smundak "line", 247*88d15eacSSasha Smundak { 248*88d15eacSSasha Smundak- 0x62, 249*88d15eacSSasha Smundak+ 0x42, 250*88d15eacSSasha Smundak 0x79, 251*88d15eacSSasha Smundak 0x74, 252*88d15eacSSasha Smundak ... // 2 identical elements 253*88d15eacSSasha Smundak }, 254*88d15eacSSasha Smundak })), 255*88d15eacSSasha Smundak } 256*88d15eacSSasha Smundak>>> TestDiff/Transformer/AcyclicString 257*88d15eacSSasha Smundak<<< TestDiff/Reporter/PanicStringer 258*88d15eacSSasha Smundak struct{ X fmt.Stringer }{ 259*88d15eacSSasha Smundak- X: struct{ fmt.Stringer }{}, 260*88d15eacSSasha Smundak+ X: s"", 261*88d15eacSSasha Smundak } 262*88d15eacSSasha Smundak>>> TestDiff/Reporter/PanicStringer 263*88d15eacSSasha Smundak<<< TestDiff/Reporter/PanicError 264*88d15eacSSasha Smundak struct{ X error }{ 265*88d15eacSSasha Smundak- X: struct{ error }{}, 266*88d15eacSSasha Smundak+ X: e"", 267*88d15eacSSasha Smundak } 268*88d15eacSSasha Smundak>>> TestDiff/Reporter/PanicError 269*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousType 270*88d15eacSSasha Smundak any( 271*88d15eacSSasha Smundak- "github.com/google/go-cmp/cmp/internal/teststructs/foo1".Bar{}, 272*88d15eacSSasha Smundak+ "github.com/google/go-cmp/cmp/internal/teststructs/foo2".Bar{}, 273*88d15eacSSasha Smundak ) 274*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousType 275*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousPointer 276*88d15eacSSasha Smundak (*int)( 277*88d15eacSSasha Smundak- &⟪0xdeadf00f⟫0, 278*88d15eacSSasha Smundak+ &⟪0xdeadf00f⟫0, 279*88d15eacSSasha Smundak ) 280*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousPointer 281*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousPointerStruct 282*88d15eacSSasha Smundak struct{ I *int }{ 283*88d15eacSSasha Smundak- I: &⟪0xdeadf00f⟫0, 284*88d15eacSSasha Smundak+ I: &⟪0xdeadf00f⟫0, 285*88d15eacSSasha Smundak } 286*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousPointerStruct 287*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousPointerSlice 288*88d15eacSSasha Smundak []*int{ 289*88d15eacSSasha Smundak- &⟪0xdeadf00f⟫0, 290*88d15eacSSasha Smundak+ &⟪0xdeadf00f⟫0, 291*88d15eacSSasha Smundak } 292*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousPointerSlice 293*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousPointerMap 294*88d15eacSSasha Smundak map[string]*int{ 295*88d15eacSSasha Smundak- "zero": &⟪0xdeadf00f⟫0, 296*88d15eacSSasha Smundak+ "zero": &⟪0xdeadf00f⟫0, 297*88d15eacSSasha Smundak } 298*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousPointerMap 299*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousStringer 300*88d15eacSSasha Smundak any( 301*88d15eacSSasha Smundak- cmp_test.Stringer("hello"), 302*88d15eacSSasha Smundak+ &cmp_test.Stringer("hello"), 303*88d15eacSSasha Smundak ) 304*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousStringer 305*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousStringerStruct 306*88d15eacSSasha Smundak struct{ S fmt.Stringer }{ 307*88d15eacSSasha Smundak- S: cmp_test.Stringer("hello"), 308*88d15eacSSasha Smundak+ S: &cmp_test.Stringer("hello"), 309*88d15eacSSasha Smundak } 310*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousStringerStruct 311*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousStringerSlice 312*88d15eacSSasha Smundak []fmt.Stringer{ 313*88d15eacSSasha Smundak- cmp_test.Stringer("hello"), 314*88d15eacSSasha Smundak+ &cmp_test.Stringer("hello"), 315*88d15eacSSasha Smundak } 316*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousStringerSlice 317*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousStringerMap 318*88d15eacSSasha Smundak map[string]fmt.Stringer{ 319*88d15eacSSasha Smundak- "zero": cmp_test.Stringer("hello"), 320*88d15eacSSasha Smundak+ "zero": &cmp_test.Stringer("hello"), 321*88d15eacSSasha Smundak } 322*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousStringerMap 323*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousSliceHeader 324*88d15eacSSasha Smundak []int( 325*88d15eacSSasha Smundak- ⟪ptr:0xdeadf00f, len:0, cap:5⟫{}, 326*88d15eacSSasha Smundak+ ⟪ptr:0xdeadf00f, len:0, cap:1000⟫{}, 327*88d15eacSSasha Smundak ) 328*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousSliceHeader 329*88d15eacSSasha Smundak<<< TestDiff/Reporter/AmbiguousStringerMapKey 330*88d15eacSSasha Smundak map[any]string{ 331*88d15eacSSasha Smundak- nil: "nil", 332*88d15eacSSasha Smundak+ &⟪0xdeadf00f⟫"github.com/google/go-cmp/cmp_test".Stringer("hello"): "goodbye", 333*88d15eacSSasha Smundak- "github.com/google/go-cmp/cmp_test".Stringer("hello"): "goodbye", 334*88d15eacSSasha Smundak- "github.com/google/go-cmp/cmp/internal/teststructs/foo1".Bar{S: "fizz"}: "buzz", 335*88d15eacSSasha Smundak+ "github.com/google/go-cmp/cmp/internal/teststructs/foo2".Bar{S: "fizz"}: "buzz", 336*88d15eacSSasha Smundak } 337*88d15eacSSasha Smundak>>> TestDiff/Reporter/AmbiguousStringerMapKey 338*88d15eacSSasha Smundak<<< TestDiff/Reporter/NonAmbiguousStringerMapKey 339*88d15eacSSasha Smundak map[any]string{ 340*88d15eacSSasha Smundak+ s"fizz": "buzz", 341*88d15eacSSasha Smundak- s"hello": "goodbye", 342*88d15eacSSasha Smundak } 343*88d15eacSSasha Smundak>>> TestDiff/Reporter/NonAmbiguousStringerMapKey 344*88d15eacSSasha Smundak<<< TestDiff/Reporter/InvalidUTF8 345*88d15eacSSasha Smundak any( 346*88d15eacSSasha Smundak- cmp_test.MyString("\xed\xa0\x80"), 347*88d15eacSSasha Smundak ) 348*88d15eacSSasha Smundak>>> TestDiff/Reporter/InvalidUTF8 349*88d15eacSSasha Smundak<<< TestDiff/Reporter/UnbatchedSlice 350*88d15eacSSasha Smundak cmp_test.MyComposite{ 351*88d15eacSSasha Smundak ... // 3 identical fields 352*88d15eacSSasha Smundak BytesB: nil, 353*88d15eacSSasha Smundak BytesC: nil, 354*88d15eacSSasha Smundak IntsA: []int8{ 355*88d15eacSSasha Smundak+ 10, 356*88d15eacSSasha Smundak 11, 357*88d15eacSSasha Smundak- 12, 358*88d15eacSSasha Smundak+ 21, 359*88d15eacSSasha Smundak 13, 360*88d15eacSSasha Smundak 14, 361*88d15eacSSasha Smundak ... // 15 identical elements 362*88d15eacSSasha Smundak }, 363*88d15eacSSasha Smundak IntsB: nil, 364*88d15eacSSasha Smundak IntsC: nil, 365*88d15eacSSasha Smundak ... // 6 identical fields 366*88d15eacSSasha Smundak } 367*88d15eacSSasha Smundak>>> TestDiff/Reporter/UnbatchedSlice 368*88d15eacSSasha Smundak<<< TestDiff/Reporter/BatchedSlice 369*88d15eacSSasha Smundak cmp_test.MyComposite{ 370*88d15eacSSasha Smundak ... // 3 identical fields 371*88d15eacSSasha Smundak BytesB: nil, 372*88d15eacSSasha Smundak BytesC: nil, 373*88d15eacSSasha Smundak IntsA: []int8{ 374*88d15eacSSasha Smundak- 10, 11, 12, 13, 14, 15, 16, 375*88d15eacSSasha Smundak+ 12, 29, 13, 27, 22, 23, 376*88d15eacSSasha Smundak 17, 18, 19, 20, 21, 377*88d15eacSSasha Smundak- 22, 23, 24, 25, 26, 27, 28, 29, 378*88d15eacSSasha Smundak+ 10, 26, 16, 25, 28, 11, 15, 24, 14, 379*88d15eacSSasha Smundak }, 380*88d15eacSSasha Smundak IntsB: nil, 381*88d15eacSSasha Smundak IntsC: nil, 382*88d15eacSSasha Smundak ... // 6 identical fields 383*88d15eacSSasha Smundak } 384*88d15eacSSasha Smundak>>> TestDiff/Reporter/BatchedSlice 385*88d15eacSSasha Smundak<<< TestDiff/Reporter/BatchedWithComparer 386*88d15eacSSasha Smundak cmp_test.MyComposite{ 387*88d15eacSSasha Smundak StringA: "", 388*88d15eacSSasha Smundak StringB: "", 389*88d15eacSSasha Smundak BytesA: []uint8{ 390*88d15eacSSasha Smundak- 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, // -|.......| 391*88d15eacSSasha Smundak+ 0x0c, 0x1d, 0x0d, 0x1b, 0x16, 0x17, // +|......| 392*88d15eacSSasha Smundak 0x11, 0x12, 0x13, 0x14, 0x15, // |.....| 393*88d15eacSSasha Smundak- 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, // -|........| 394*88d15eacSSasha Smundak+ 0x0a, 0x1a, 0x10, 0x19, 0x1c, 0x0b, 0x0f, 0x18, 0x0e, // +|.........| 395*88d15eacSSasha Smundak }, 396*88d15eacSSasha Smundak BytesB: nil, 397*88d15eacSSasha Smundak BytesC: nil, 398*88d15eacSSasha Smundak ... // 9 identical fields 399*88d15eacSSasha Smundak } 400*88d15eacSSasha Smundak>>> TestDiff/Reporter/BatchedWithComparer 401*88d15eacSSasha Smundak<<< TestDiff/Reporter/BatchedLong 402*88d15eacSSasha Smundak any( 403*88d15eacSSasha Smundak- cmp_test.MyComposite{IntsA: []int8{0, 1, 2, 3, 4, 5, 6, 7, ...}}, 404*88d15eacSSasha Smundak ) 405*88d15eacSSasha Smundak>>> TestDiff/Reporter/BatchedLong 406*88d15eacSSasha Smundak<<< TestDiff/Reporter/BatchedNamedAndUnnamed 407*88d15eacSSasha Smundak cmp_test.MyComposite{ 408*88d15eacSSasha Smundak StringA: "", 409*88d15eacSSasha Smundak StringB: "", 410*88d15eacSSasha Smundak BytesA: []uint8{ 411*88d15eacSSasha Smundak- 0x01, 0x02, 0x03, // -|...| 412*88d15eacSSasha Smundak+ 0x03, 0x02, 0x01, // +|...| 413*88d15eacSSasha Smundak }, 414*88d15eacSSasha Smundak BytesB: []cmp_test.MyByte{ 415*88d15eacSSasha Smundak- 0x04, 0x05, 0x06, 416*88d15eacSSasha Smundak+ 0x06, 0x05, 0x04, 417*88d15eacSSasha Smundak }, 418*88d15eacSSasha Smundak BytesC: cmp_test.MyBytes{ 419*88d15eacSSasha Smundak- 0x07, 0x08, 0x09, // -|...| 420*88d15eacSSasha Smundak+ 0x09, 0x08, 0x07, // +|...| 421*88d15eacSSasha Smundak }, 422*88d15eacSSasha Smundak IntsA: []int8{ 423*88d15eacSSasha Smundak- -1, -2, -3, 424*88d15eacSSasha Smundak+ -3, -2, -1, 425*88d15eacSSasha Smundak }, 426*88d15eacSSasha Smundak IntsB: []cmp_test.MyInt{ 427*88d15eacSSasha Smundak- -4, -5, -6, 428*88d15eacSSasha Smundak+ -6, -5, -4, 429*88d15eacSSasha Smundak }, 430*88d15eacSSasha Smundak IntsC: cmp_test.MyInts{ 431*88d15eacSSasha Smundak- -7, -8, -9, 432*88d15eacSSasha Smundak+ -9, -8, -7, 433*88d15eacSSasha Smundak }, 434*88d15eacSSasha Smundak UintsA: []uint16{ 435*88d15eacSSasha Smundak- 1000, 2000, 3000, 436*88d15eacSSasha Smundak+ 3000, 2000, 1000, 437*88d15eacSSasha Smundak }, 438*88d15eacSSasha Smundak UintsB: []cmp_test.MyUint{ 439*88d15eacSSasha Smundak- 4000, 5000, 6000, 440*88d15eacSSasha Smundak+ 6000, 5000, 4000, 441*88d15eacSSasha Smundak }, 442*88d15eacSSasha Smundak UintsC: cmp_test.MyUints{ 443*88d15eacSSasha Smundak- 7000, 8000, 9000, 444*88d15eacSSasha Smundak+ 9000, 8000, 7000, 445*88d15eacSSasha Smundak }, 446*88d15eacSSasha Smundak FloatsA: []float32{ 447*88d15eacSSasha Smundak- 1.5, 2.5, 3.5, 448*88d15eacSSasha Smundak+ 3.5, 2.5, 1.5, 449*88d15eacSSasha Smundak }, 450*88d15eacSSasha Smundak FloatsB: []cmp_test.MyFloat{ 451*88d15eacSSasha Smundak- 4.5, 5.5, 6.5, 452*88d15eacSSasha Smundak+ 6.5, 5.5, 4.5, 453*88d15eacSSasha Smundak }, 454*88d15eacSSasha Smundak FloatsC: cmp_test.MyFloats{ 455*88d15eacSSasha Smundak- 7.5, 8.5, 9.5, 456*88d15eacSSasha Smundak+ 9.5, 8.5, 7.5, 457*88d15eacSSasha Smundak }, 458*88d15eacSSasha Smundak } 459*88d15eacSSasha Smundak>>> TestDiff/Reporter/BatchedNamedAndUnnamed 460*88d15eacSSasha Smundak<<< TestDiff/Reporter/BinaryHexdump 461*88d15eacSSasha Smundak cmp_test.MyComposite{ 462*88d15eacSSasha Smundak StringA: "", 463*88d15eacSSasha Smundak StringB: "", 464*88d15eacSSasha Smundak BytesA: []uint8{ 465*88d15eacSSasha Smundak 0xf3, 0x0f, 0x8a, 0xa4, 0xd3, 0x12, 0x52, 0x09, 0x24, 0xbe, // |......R.$.| 466*88d15eacSSasha Smundak- 0x58, 0x95, 0x41, 0xfd, 0x24, 0x66, 0x58, 0x8b, 0x79, // -|X.A.$fX.y| 467*88d15eacSSasha Smundak 0x54, 0xac, 0x0d, 0xd8, 0x71, 0x77, 0x70, 0x20, 0x6a, 0x5c, 0x73, 0x7f, 0x8c, 0x17, 0x55, 0xc0, // |T...qwp j\s...U.| 468*88d15eacSSasha Smundak 0x34, 0xce, 0x6e, 0xf7, 0xaa, 0x47, 0xee, 0x32, 0x9d, 0xc5, 0xca, 0x1e, 0x58, 0xaf, 0x8f, 0x27, // |4.n..G.2....X..'| 469*88d15eacSSasha Smundak 0xf3, 0x02, 0x4a, 0x90, 0xed, 0x69, 0x2e, 0x70, 0x32, 0xb4, 0xab, 0x30, 0x20, 0xb6, 0xbd, 0x5c, // |..J..i.p2..0 ..\| 470*88d15eacSSasha Smundak 0x62, 0x34, 0x17, 0xb0, 0x00, 0xbb, 0x4f, 0x7e, 0x27, 0x47, 0x06, 0xf4, 0x2e, 0x66, 0xfd, 0x63, // |b4....O~'G...f.c| 471*88d15eacSSasha Smundak 0xd7, 0x04, 0xdd, 0xb7, 0x30, 0xb7, 0xd1, // |....0..| 472*88d15eacSSasha Smundak- 0x55, 0x7e, 0x7b, 0xf6, 0xb3, 0x7e, 0x1d, 0x57, 0x69, // -|U~{..~.Wi| 473*88d15eacSSasha Smundak+ 0x75, 0x2d, 0x5b, 0x5d, 0x5d, 0xf6, 0xb3, 0x68, 0x61, 0x68, 0x61, 0x7e, 0x1d, 0x57, 0x49, // +|u-[]]..haha~.WI| 474*88d15eacSSasha Smundak 0x20, 0x9e, 0xbc, 0xdf, 0xe1, 0x4d, 0xa9, 0xef, 0xa2, 0xd2, 0xed, 0xb4, 0x47, 0x78, 0xc9, 0xc9, // | ....M......Gx..| 475*88d15eacSSasha Smundak 0x27, 0xa4, 0xc6, 0xce, 0xec, 0x44, 0x70, 0x5d, // |'....Dp]| 476*88d15eacSSasha Smundak }, 477*88d15eacSSasha Smundak BytesB: nil, 478*88d15eacSSasha Smundak BytesC: nil, 479*88d15eacSSasha Smundak ... // 9 identical fields 480*88d15eacSSasha Smundak } 481*88d15eacSSasha Smundak>>> TestDiff/Reporter/BinaryHexdump 482*88d15eacSSasha Smundak<<< TestDiff/Reporter/StringHexdump 483*88d15eacSSasha Smundak cmp_test.MyComposite{ 484*88d15eacSSasha Smundak StringA: "", 485*88d15eacSSasha Smundak StringB: cmp_test.MyString{ 486*88d15eacSSasha Smundak- 0x72, 0x65, 0x61, 0x64, 0x6d, 0x65, // -|readme| 487*88d15eacSSasha Smundak+ 0x67, 0x6f, 0x70, 0x68, 0x65, 0x72, // +|gopher| 488*88d15eacSSasha Smundak 0x2e, 0x74, 0x78, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // |.txt............| 489*88d15eacSSasha Smundak 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // |................| 490*88d15eacSSasha Smundak ... // 64 identical bytes 491*88d15eacSSasha Smundak 0x30, 0x30, 0x36, 0x30, 0x30, 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, 0x30, // |00600.0000000.00| 492*88d15eacSSasha Smundak 0x30, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x34, // |00000.0000000004| 493*88d15eacSSasha Smundak- 0x36, // -|6| 494*88d15eacSSasha Smundak+ 0x33, // +|3| 495*88d15eacSSasha Smundak 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, 0x31, 0x31, // |.00000000000.011| 496*88d15eacSSasha Smundak- 0x31, 0x37, 0x33, // -|173| 497*88d15eacSSasha Smundak+ 0x32, 0x31, 0x37, // +|217| 498*88d15eacSSasha Smundak 0x00, 0x20, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // |. 0.............| 499*88d15eacSSasha Smundak 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // |................| 500*88d15eacSSasha Smundak ... // 326 identical bytes 501*88d15eacSSasha Smundak }, 502*88d15eacSSasha Smundak BytesA: nil, 503*88d15eacSSasha Smundak BytesB: nil, 504*88d15eacSSasha Smundak ... // 10 identical fields 505*88d15eacSSasha Smundak } 506*88d15eacSSasha Smundak>>> TestDiff/Reporter/StringHexdump 507*88d15eacSSasha Smundak<<< TestDiff/Reporter/BinaryString 508*88d15eacSSasha Smundak cmp_test.MyComposite{ 509*88d15eacSSasha Smundak StringA: "", 510*88d15eacSSasha Smundak StringB: "", 511*88d15eacSSasha Smundak BytesA: bytes.Join({ 512*88d15eacSSasha Smundak `{"firstName":"John","lastName":"Smith","isAlive":true,"age":27,"`, 513*88d15eacSSasha Smundak `address":{"streetAddress":"`, 514*88d15eacSSasha Smundak- "314 54th Avenue", 515*88d15eacSSasha Smundak+ "21 2nd Street", 516*88d15eacSSasha Smundak `","city":"New York","state":"NY","postalCode":"10021-3100"},"pho`, 517*88d15eacSSasha Smundak `neNumbers":[{"type":"home","number":"212 555-1234"},{"type":"off`, 518*88d15eacSSasha Smundak ... // 101 identical bytes 519*88d15eacSSasha Smundak }, ""), 520*88d15eacSSasha Smundak BytesB: nil, 521*88d15eacSSasha Smundak BytesC: nil, 522*88d15eacSSasha Smundak ... // 9 identical fields 523*88d15eacSSasha Smundak } 524*88d15eacSSasha Smundak>>> TestDiff/Reporter/BinaryString 525*88d15eacSSasha Smundak<<< TestDiff/Reporter/TripleQuote 526*88d15eacSSasha Smundak cmp_test.MyComposite{ 527*88d15eacSSasha Smundak StringA: ( 528*88d15eacSSasha Smundak """ 529*88d15eacSSasha Smundak aaa 530*88d15eacSSasha Smundak bbb 531*88d15eacSSasha Smundak- ccc 532*88d15eacSSasha Smundak+ CCC 533*88d15eacSSasha Smundak ddd 534*88d15eacSSasha Smundak eee 535*88d15eacSSasha Smundak ... // 10 identical lines 536*88d15eacSSasha Smundak ppp 537*88d15eacSSasha Smundak qqq 538*88d15eacSSasha Smundak- RRR 539*88d15eacSSasha Smundak- sss 540*88d15eacSSasha Smundak+ rrr 541*88d15eacSSasha Smundak+ SSS 542*88d15eacSSasha Smundak ttt 543*88d15eacSSasha Smundak uuu 544*88d15eacSSasha Smundak ... // 6 identical lines 545*88d15eacSSasha Smundak """ 546*88d15eacSSasha Smundak ), 547*88d15eacSSasha Smundak StringB: "", 548*88d15eacSSasha Smundak BytesA: nil, 549*88d15eacSSasha Smundak ... // 11 identical fields 550*88d15eacSSasha Smundak } 551*88d15eacSSasha Smundak>>> TestDiff/Reporter/TripleQuote 552*88d15eacSSasha Smundak<<< TestDiff/Reporter/TripleQuoteSlice 553*88d15eacSSasha Smundak []string{ 554*88d15eacSSasha Smundak ( 555*88d15eacSSasha Smundak """ 556*88d15eacSSasha Smundak ... // 23 identical lines 557*88d15eacSSasha Smundak xxx 558*88d15eacSSasha Smundak yyy 559*88d15eacSSasha Smundak- zzz 560*88d15eacSSasha Smundak """ 561*88d15eacSSasha Smundak ), 562*88d15eacSSasha Smundak "aaa\nbbb\nccc\nddd\neee\nfff\nggg\nhhh\niii\njjj\nkkk\nlll\nmmm\nnnn\nooo\nppp\n"..., 563*88d15eacSSasha Smundak } 564*88d15eacSSasha Smundak>>> TestDiff/Reporter/TripleQuoteSlice 565*88d15eacSSasha Smundak<<< TestDiff/Reporter/TripleQuoteNamedTypes 566*88d15eacSSasha Smundak cmp_test.MyComposite{ 567*88d15eacSSasha Smundak StringA: "", 568*88d15eacSSasha Smundak StringB: ( 569*88d15eacSSasha Smundak """ 570*88d15eacSSasha Smundak aaa 571*88d15eacSSasha Smundak bbb 572*88d15eacSSasha Smundak- ccc 573*88d15eacSSasha Smundak+ CCC 574*88d15eacSSasha Smundak ddd 575*88d15eacSSasha Smundak eee 576*88d15eacSSasha Smundak ... // 10 identical lines 577*88d15eacSSasha Smundak ppp 578*88d15eacSSasha Smundak qqq 579*88d15eacSSasha Smundak- RRR 580*88d15eacSSasha Smundak- sss 581*88d15eacSSasha Smundak+ rrr 582*88d15eacSSasha Smundak+ SSS 583*88d15eacSSasha Smundak ttt 584*88d15eacSSasha Smundak uuu 585*88d15eacSSasha Smundak ... // 5 identical lines 586*88d15eacSSasha Smundak """ 587*88d15eacSSasha Smundak ), 588*88d15eacSSasha Smundak BytesA: nil, 589*88d15eacSSasha Smundak BytesB: nil, 590*88d15eacSSasha Smundak BytesC: cmp_test.MyBytes( 591*88d15eacSSasha Smundak """ 592*88d15eacSSasha Smundak aaa 593*88d15eacSSasha Smundak bbb 594*88d15eacSSasha Smundak- ccc 595*88d15eacSSasha Smundak+ CCC 596*88d15eacSSasha Smundak ddd 597*88d15eacSSasha Smundak eee 598*88d15eacSSasha Smundak ... // 10 identical lines 599*88d15eacSSasha Smundak ppp 600*88d15eacSSasha Smundak qqq 601*88d15eacSSasha Smundak- RRR 602*88d15eacSSasha Smundak- sss 603*88d15eacSSasha Smundak+ rrr 604*88d15eacSSasha Smundak+ SSS 605*88d15eacSSasha Smundak ttt 606*88d15eacSSasha Smundak uuu 607*88d15eacSSasha Smundak ... // 5 identical lines 608*88d15eacSSasha Smundak """ 609*88d15eacSSasha Smundak ), 610*88d15eacSSasha Smundak IntsA: nil, 611*88d15eacSSasha Smundak IntsB: nil, 612*88d15eacSSasha Smundak ... // 7 identical fields 613*88d15eacSSasha Smundak } 614*88d15eacSSasha Smundak>>> TestDiff/Reporter/TripleQuoteNamedTypes 615*88d15eacSSasha Smundak<<< TestDiff/Reporter/TripleQuoteSliceNamedTypes 616*88d15eacSSasha Smundak []cmp_test.MyString{ 617*88d15eacSSasha Smundak ( 618*88d15eacSSasha Smundak """ 619*88d15eacSSasha Smundak ... // 23 identical lines 620*88d15eacSSasha Smundak xxx 621*88d15eacSSasha Smundak yyy 622*88d15eacSSasha Smundak- zzz 623*88d15eacSSasha Smundak """ 624*88d15eacSSasha Smundak ), 625*88d15eacSSasha Smundak "aaa\nbbb\nccc\nddd\neee\nfff\nggg\nhhh\niii\njjj\nkkk\nlll\nmmm\nnnn\nooo\nppp\n"..., 626*88d15eacSSasha Smundak } 627*88d15eacSSasha Smundak>>> TestDiff/Reporter/TripleQuoteSliceNamedTypes 628*88d15eacSSasha Smundak<<< TestDiff/Reporter/TripleQuoteEndlines 629*88d15eacSSasha Smundak ( 630*88d15eacSSasha Smundak """ 631*88d15eacSSasha Smundak aaa 632*88d15eacSSasha Smundak bbb 633*88d15eacSSasha Smundak- ccc 634*88d15eacSSasha Smundak+ CCC 635*88d15eacSSasha Smundak ddd 636*88d15eacSSasha Smundak eee 637*88d15eacSSasha Smundak ... // 10 identical lines 638*88d15eacSSasha Smundak ppp 639*88d15eacSSasha Smundak qqq 640*88d15eacSSasha Smundak- RRR 641*88d15eacSSasha Smundak+ rrr 642*88d15eacSSasha Smundak sss 643*88d15eacSSasha Smundak ttt 644*88d15eacSSasha Smundak ... // 4 identical lines 645*88d15eacSSasha Smundak yyy 646*88d15eacSSasha Smundak zzz 647*88d15eacSSasha Smundak- 648*88d15eacSSasha Smundak """ 649*88d15eacSSasha Smundak ) 650*88d15eacSSasha Smundak>>> TestDiff/Reporter/TripleQuoteEndlines 651*88d15eacSSasha Smundak<<< TestDiff/Reporter/AvoidTripleQuoteAmbiguousQuotes 652*88d15eacSSasha Smundak strings.Join({ 653*88d15eacSSasha Smundak "aaa", 654*88d15eacSSasha Smundak "bbb", 655*88d15eacSSasha Smundak- "ccc", 656*88d15eacSSasha Smundak+ "CCC", 657*88d15eacSSasha Smundak "ddd", 658*88d15eacSSasha Smundak "eee", 659*88d15eacSSasha Smundak- "fff", 660*88d15eacSSasha Smundak+ `"""`, 661*88d15eacSSasha Smundak "ggg", 662*88d15eacSSasha Smundak "hhh", 663*88d15eacSSasha Smundak ... // 7 identical lines 664*88d15eacSSasha Smundak "ppp", 665*88d15eacSSasha Smundak "qqq", 666*88d15eacSSasha Smundak- "RRR", 667*88d15eacSSasha Smundak+ "rrr", 668*88d15eacSSasha Smundak "sss", 669*88d15eacSSasha Smundak "ttt", 670*88d15eacSSasha Smundak ... // 7 identical lines 671*88d15eacSSasha Smundak }, "\n") 672*88d15eacSSasha Smundak>>> TestDiff/Reporter/AvoidTripleQuoteAmbiguousQuotes 673*88d15eacSSasha Smundak<<< TestDiff/Reporter/AvoidTripleQuoteAmbiguousEllipsis 674*88d15eacSSasha Smundak strings.Join({ 675*88d15eacSSasha Smundak "aaa", 676*88d15eacSSasha Smundak "bbb", 677*88d15eacSSasha Smundak- "ccc", 678*88d15eacSSasha Smundak- "...", 679*88d15eacSSasha Smundak+ "CCC", 680*88d15eacSSasha Smundak+ "ddd", 681*88d15eacSSasha Smundak "eee", 682*88d15eacSSasha Smundak "fff", 683*88d15eacSSasha Smundak ... // 9 identical lines 684*88d15eacSSasha Smundak "ppp", 685*88d15eacSSasha Smundak "qqq", 686*88d15eacSSasha Smundak- "RRR", 687*88d15eacSSasha Smundak+ "rrr", 688*88d15eacSSasha Smundak "sss", 689*88d15eacSSasha Smundak "ttt", 690*88d15eacSSasha Smundak ... // 7 identical lines 691*88d15eacSSasha Smundak }, "\n") 692*88d15eacSSasha Smundak>>> TestDiff/Reporter/AvoidTripleQuoteAmbiguousEllipsis 693*88d15eacSSasha Smundak<<< TestDiff/Reporter/AvoidTripleQuoteNonPrintable 694*88d15eacSSasha Smundak strings.Join({ 695*88d15eacSSasha Smundak "aaa", 696*88d15eacSSasha Smundak "bbb", 697*88d15eacSSasha Smundak- "ccc", 698*88d15eacSSasha Smundak+ "CCC", 699*88d15eacSSasha Smundak "ddd", 700*88d15eacSSasha Smundak "eee", 701*88d15eacSSasha Smundak ... // 7 identical lines 702*88d15eacSSasha Smundak "mmm", 703*88d15eacSSasha Smundak "nnn", 704*88d15eacSSasha Smundak- "ooo", 705*88d15eacSSasha Smundak+ "o\roo", 706*88d15eacSSasha Smundak "ppp", 707*88d15eacSSasha Smundak "qqq", 708*88d15eacSSasha Smundak- "RRR", 709*88d15eacSSasha Smundak+ "rrr", 710*88d15eacSSasha Smundak "sss", 711*88d15eacSSasha Smundak "ttt", 712*88d15eacSSasha Smundak ... // 7 identical lines 713*88d15eacSSasha Smundak }, "\n") 714*88d15eacSSasha Smundak>>> TestDiff/Reporter/AvoidTripleQuoteNonPrintable 715*88d15eacSSasha Smundak<<< TestDiff/Reporter/AvoidTripleQuoteIdenticalWhitespace 716*88d15eacSSasha Smundak strings.Join({ 717*88d15eacSSasha Smundak "aaa", 718*88d15eacSSasha Smundak "bbb", 719*88d15eacSSasha Smundak- "ccc", 720*88d15eacSSasha Smundak- " ddd", 721*88d15eacSSasha Smundak+ "ccc ", 722*88d15eacSSasha Smundak+ "ddd", 723*88d15eacSSasha Smundak "eee", 724*88d15eacSSasha Smundak "fff", 725*88d15eacSSasha Smundak ... // 9 identical lines 726*88d15eacSSasha Smundak "ppp", 727*88d15eacSSasha Smundak "qqq", 728*88d15eacSSasha Smundak- "RRR", 729*88d15eacSSasha Smundak+ "rrr", 730*88d15eacSSasha Smundak "sss", 731*88d15eacSSasha Smundak "ttt", 732*88d15eacSSasha Smundak ... // 7 identical lines 733*88d15eacSSasha Smundak }, "\n") 734*88d15eacSSasha Smundak>>> TestDiff/Reporter/AvoidTripleQuoteIdenticalWhitespace 735*88d15eacSSasha Smundak<<< TestDiff/Reporter/TripleQuoteStringer 736*88d15eacSSasha Smundak []fmt.Stringer{ 737*88d15eacSSasha Smundak s"package main\n\nimport (\n\t\"fmt\"\n)\n\nfunc main() {\n\tfmt.Println(\"Hel"..., 738*88d15eacSSasha Smundak- ( 739*88d15eacSSasha Smundak- s""" 740*88d15eacSSasha Smundak- package main 741*88d15eacSSasha Smundak- 742*88d15eacSSasha Smundak- import ( 743*88d15eacSSasha Smundak- "fmt" 744*88d15eacSSasha Smundak- "math/rand" 745*88d15eacSSasha Smundak- ) 746*88d15eacSSasha Smundak- 747*88d15eacSSasha Smundak- func main() { 748*88d15eacSSasha Smundak- fmt.Println("My favorite number is", rand.Intn(10)) 749*88d15eacSSasha Smundak- } 750*88d15eacSSasha Smundak- s""" 751*88d15eacSSasha Smundak- ), 752*88d15eacSSasha Smundak+ ( 753*88d15eacSSasha Smundak+ s""" 754*88d15eacSSasha Smundak+ package main 755*88d15eacSSasha Smundak+ 756*88d15eacSSasha Smundak+ import ( 757*88d15eacSSasha Smundak+ "fmt" 758*88d15eacSSasha Smundak+ "math" 759*88d15eacSSasha Smundak+ ) 760*88d15eacSSasha Smundak+ 761*88d15eacSSasha Smundak+ func main() { 762*88d15eacSSasha Smundak+ fmt.Printf("Now you have %g problems.\n", math.Sqrt(7)) 763*88d15eacSSasha Smundak+ } 764*88d15eacSSasha Smundak+ s""" 765*88d15eacSSasha Smundak+ ), 766*88d15eacSSasha Smundak } 767*88d15eacSSasha Smundak>>> TestDiff/Reporter/TripleQuoteStringer 768*88d15eacSSasha Smundak<<< TestDiff/Reporter/LimitMaximumBytesDiffs 769*88d15eacSSasha Smundak []uint8{ 770*88d15eacSSasha Smundak- 0xcd, 0x3d, 0x3d, 0x3d, 0x3d, 0x06, 0x1f, 0xc2, 0xcc, 0xc2, 0x2d, 0x53, // -|.====.....-S| 771*88d15eacSSasha Smundak+ 0x5c, 0x3d, 0x3d, 0x3d, 0x3d, 0x7c, 0x96, 0xe7, 0x53, 0x42, 0xa0, 0xab, // +|\====|..SB..| 772*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |=====| 773*88d15eacSSasha Smundak- 0x1d, 0xdf, 0x61, 0xae, 0x98, 0x9f, 0x48, // -|..a...H| 774*88d15eacSSasha Smundak+ 0xf0, 0xbd, 0xa5, 0x71, 0xab, 0x17, 0x3b, // +|...q..;| 775*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |======| 776*88d15eacSSasha Smundak- 0xc7, 0xb0, 0xb7, // -|...| 777*88d15eacSSasha Smundak+ 0xab, 0x50, 0x00, // +|.P.| 778*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |=======| 779*88d15eacSSasha Smundak- 0xef, 0x3d, 0x3d, 0x3d, 0x3d, 0x3a, 0x5c, 0x94, 0xe6, 0x4a, 0xc7, // -|.====:\..J.| 780*88d15eacSSasha Smundak+ 0xeb, 0x3d, 0x3d, 0x3d, 0x3d, 0xa5, 0x14, 0xe6, 0x4f, 0x28, 0xe4, // +|.====...O(.| 781*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |=====| 782*88d15eacSSasha Smundak- 0xb4, // -|.| 783*88d15eacSSasha Smundak+ 0x28, // +|(| 784*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |======| 785*88d15eacSSasha Smundak- 0x0a, 0x0a, 0xf7, 0x94, // -|....| 786*88d15eacSSasha Smundak+ 0x2f, 0x63, 0x40, 0x3f, // +|/c@?| 787*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |===========| 788*88d15eacSSasha Smundak- 0xf2, 0x9c, 0xc0, 0x66, // -|...f| 789*88d15eacSSasha Smundak+ 0xd9, 0x78, 0xed, 0x13, // +|.x..| 790*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |=====| 791*88d15eacSSasha Smundak- 0x34, 0xf6, 0xf1, 0xc3, 0x17, 0x82, // -|4.....| 792*88d15eacSSasha Smundak+ 0x4a, 0xfc, 0x91, 0x38, 0x42, 0x8d, // +|J..8B.| 793*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |======| 794*88d15eacSSasha Smundak- 0x6e, 0x16, 0x60, 0x91, 0x44, 0xc6, 0x06, // -|n.`.D..| 795*88d15eacSSasha Smundak+ 0x61, 0x38, 0x41, 0xeb, 0x73, 0x04, 0xae, // +|a8A.s..| 796*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |=======| 797*88d15eacSSasha Smundak- 0x1c, 0x45, 0x3d, 0x3d, 0x3d, 0x3d, 0x2e, // -|.E====.| 798*88d15eacSSasha Smundak+ 0x07, 0x43, 0x3d, 0x3d, 0x3d, 0x3d, 0x1c, // +|.C====.| 799*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |===========| 800*88d15eacSSasha Smundak- 0xc4, 0x18, // -|..| 801*88d15eacSSasha Smundak+ 0x91, 0x22, // +|."| 802*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |=======| 803*88d15eacSSasha Smundak- 0x8a, 0x8d, 0x0e, 0x3d, 0x3d, 0x3d, 0x3d, 0x87, 0xb1, 0xa5, 0x8e, 0xc3, 0x3d, 0x3d, 0x3d, 0x3d, // -|...====.....====| 804*88d15eacSSasha Smundak- 0x3d, 0x7a, 0x0f, 0x31, 0xae, 0x55, 0x3d, // -|=z.1.U=| 805*88d15eacSSasha Smundak+ 0x75, 0xd8, 0xbe, 0x3d, 0x3d, 0x3d, 0x3d, 0x73, 0xec, 0x84, 0x35, 0x07, 0x3d, 0x3d, 0x3d, 0x3d, // +|u..====s..5.====| 806*88d15eacSSasha Smundak+ 0x3d, 0x3b, 0xab, 0x53, 0x39, 0x74, // +|=;.S9t| 807*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |=====| 808*88d15eacSSasha Smundak- 0x47, 0x2c, 0x3d, // -|G,=| 809*88d15eacSSasha Smundak+ 0x3d, 0x1f, 0x1b, // +|=..| 810*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |======| 811*88d15eacSSasha Smundak- 0x35, 0xe7, 0x35, 0xee, 0x82, 0xf4, 0xce, 0x3d, 0x3d, 0x3d, 0x3d, 0x11, 0x72, 0x3d, // -|5.5....====.r=| 812*88d15eacSSasha Smundak+ 0x3d, 0x80, 0xab, 0x2f, 0xed, 0x2b, 0x3a, 0x3b, 0x3d, 0x3d, 0x3d, 0x3d, 0xea, 0x49, // +|=../.+:;====.I| 813*88d15eacSSasha Smundak 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, // |==========| 814*88d15eacSSasha Smundak- 0xaf, 0x5d, 0x3d, // -|.]=| 815*88d15eacSSasha Smundak+ 0x3d, 0xab, 0x6c, // +|=.l| 816*88d15eacSSasha Smundak ... // 51 identical, 34 removed, and 35 inserted bytes 817*88d15eacSSasha Smundak } 818*88d15eacSSasha Smundak>>> TestDiff/Reporter/LimitMaximumBytesDiffs 819*88d15eacSSasha Smundak<<< TestDiff/Reporter/LimitMaximumStringDiffs 820*88d15eacSSasha Smundak ( 821*88d15eacSSasha Smundak """ 822*88d15eacSSasha Smundak- a 823*88d15eacSSasha Smundak+ aa 824*88d15eacSSasha Smundak b 825*88d15eacSSasha Smundak- c 826*88d15eacSSasha Smundak+ cc 827*88d15eacSSasha Smundak d 828*88d15eacSSasha Smundak- e 829*88d15eacSSasha Smundak+ ee 830*88d15eacSSasha Smundak f 831*88d15eacSSasha Smundak- g 832*88d15eacSSasha Smundak+ gg 833*88d15eacSSasha Smundak h 834*88d15eacSSasha Smundak- i 835*88d15eacSSasha Smundak+ ii 836*88d15eacSSasha Smundak j 837*88d15eacSSasha Smundak- k 838*88d15eacSSasha Smundak+ kk 839*88d15eacSSasha Smundak l 840*88d15eacSSasha Smundak- m 841*88d15eacSSasha Smundak+ mm 842*88d15eacSSasha Smundak n 843*88d15eacSSasha Smundak- o 844*88d15eacSSasha Smundak+ oo 845*88d15eacSSasha Smundak p 846*88d15eacSSasha Smundak- q 847*88d15eacSSasha Smundak+ qq 848*88d15eacSSasha Smundak r 849*88d15eacSSasha Smundak- s 850*88d15eacSSasha Smundak+ ss 851*88d15eacSSasha Smundak t 852*88d15eacSSasha Smundak- u 853*88d15eacSSasha Smundak+ uu 854*88d15eacSSasha Smundak v 855*88d15eacSSasha Smundak- w 856*88d15eacSSasha Smundak+ ww 857*88d15eacSSasha Smundak x 858*88d15eacSSasha Smundak- y 859*88d15eacSSasha Smundak+ yy 860*88d15eacSSasha Smundak z 861*88d15eacSSasha Smundak- A 862*88d15eacSSasha Smundak+ AA 863*88d15eacSSasha Smundak B 864*88d15eacSSasha Smundak- C 865*88d15eacSSasha Smundak+ CC 866*88d15eacSSasha Smundak D 867*88d15eacSSasha Smundak- E 868*88d15eacSSasha Smundak+ EE 869*88d15eacSSasha Smundak ... // 12 identical, 10 removed, and 10 inserted lines 870*88d15eacSSasha Smundak """ 871*88d15eacSSasha Smundak ) 872*88d15eacSSasha Smundak>>> TestDiff/Reporter/LimitMaximumStringDiffs 873*88d15eacSSasha Smundak<<< TestDiff/Reporter/LimitMaximumSliceDiffs 874*88d15eacSSasha Smundak []struct{ S string }{ 875*88d15eacSSasha Smundak- {S: "a"}, 876*88d15eacSSasha Smundak+ {S: "aa"}, 877*88d15eacSSasha Smundak {S: "b"}, 878*88d15eacSSasha Smundak- {S: "c"}, 879*88d15eacSSasha Smundak+ {S: "cc"}, 880*88d15eacSSasha Smundak {S: "d"}, 881*88d15eacSSasha Smundak- {S: "e"}, 882*88d15eacSSasha Smundak+ {S: "ee"}, 883*88d15eacSSasha Smundak {S: "f"}, 884*88d15eacSSasha Smundak- {S: "g"}, 885*88d15eacSSasha Smundak+ {S: "gg"}, 886*88d15eacSSasha Smundak {S: "h"}, 887*88d15eacSSasha Smundak- {S: "i"}, 888*88d15eacSSasha Smundak+ {S: "ii"}, 889*88d15eacSSasha Smundak {S: "j"}, 890*88d15eacSSasha Smundak- {S: "k"}, 891*88d15eacSSasha Smundak+ {S: "kk"}, 892*88d15eacSSasha Smundak {S: "l"}, 893*88d15eacSSasha Smundak- {S: "m"}, 894*88d15eacSSasha Smundak+ {S: "mm"}, 895*88d15eacSSasha Smundak {S: "n"}, 896*88d15eacSSasha Smundak- {S: "o"}, 897*88d15eacSSasha Smundak+ {S: "oo"}, 898*88d15eacSSasha Smundak {S: "p"}, 899*88d15eacSSasha Smundak- {S: "q"}, 900*88d15eacSSasha Smundak+ {S: "qq"}, 901*88d15eacSSasha Smundak {S: "r"}, 902*88d15eacSSasha Smundak- {S: "s"}, 903*88d15eacSSasha Smundak+ {S: "ss"}, 904*88d15eacSSasha Smundak {S: "t"}, 905*88d15eacSSasha Smundak- {S: "u"}, 906*88d15eacSSasha Smundak+ {S: "uu"}, 907*88d15eacSSasha Smundak {S: "v"}, 908*88d15eacSSasha Smundak- {S: "w"}, 909*88d15eacSSasha Smundak+ {S: "ww"}, 910*88d15eacSSasha Smundak {S: "x"}, 911*88d15eacSSasha Smundak- {S: "y"}, 912*88d15eacSSasha Smundak+ {S: "yy"}, 913*88d15eacSSasha Smundak {S: "z"}, 914*88d15eacSSasha Smundak- {S: "A"}, 915*88d15eacSSasha Smundak+ {S: "AA"}, 916*88d15eacSSasha Smundak {S: "B"}, 917*88d15eacSSasha Smundak- {S: "C"}, 918*88d15eacSSasha Smundak+ {S: "CC"}, 919*88d15eacSSasha Smundak {S: "D"}, 920*88d15eacSSasha Smundak- {S: "E"}, 921*88d15eacSSasha Smundak+ {S: "EE"}, 922*88d15eacSSasha Smundak ... // 12 identical and 10 modified elements 923*88d15eacSSasha Smundak } 924*88d15eacSSasha Smundak>>> TestDiff/Reporter/LimitMaximumSliceDiffs 925*88d15eacSSasha Smundak<<< TestDiff/Reporter/MultilineString 926*88d15eacSSasha Smundak cmp_test.MyComposite{ 927*88d15eacSSasha Smundak StringA: ( 928*88d15eacSSasha Smundak """ 929*88d15eacSSasha Smundak- Package cmp determines equality of values. 930*88d15eacSSasha Smundak+ Package cmp determines equality of value. 931*88d15eacSSasha Smundak 932*88d15eacSSasha Smundak This package is intended to be a more powerful and safer alternative to 933*88d15eacSSasha Smundak ... // 6 identical lines 934*88d15eacSSasha Smundak For example, an equality function may report floats as equal so long as they 935*88d15eacSSasha Smundak are within some tolerance of each other. 936*88d15eacSSasha Smundak- 937*88d15eacSSasha Smundak- • Types that have an Equal method may use that method to determine equality. 938*88d15eacSSasha Smundak- This allows package authors to determine the equality operation for the types 939*88d15eacSSasha Smundak- that they define. 940*88d15eacSSasha Smundak 941*88d15eacSSasha Smundak • If no custom equality functions are used and no Equal method is defined, 942*88d15eacSSasha Smundak ... // 3 identical lines 943*88d15eacSSasha Smundak by using an Ignore option (see cmpopts.IgnoreUnexported) or explicitly compared 944*88d15eacSSasha Smundak using the AllowUnexported option. 945*88d15eacSSasha Smundak- 946*88d15eacSSasha Smundak """ 947*88d15eacSSasha Smundak ), 948*88d15eacSSasha Smundak StringB: "", 949*88d15eacSSasha Smundak BytesA: nil, 950*88d15eacSSasha Smundak ... // 11 identical fields 951*88d15eacSSasha Smundak } 952*88d15eacSSasha Smundak>>> TestDiff/Reporter/MultilineString 953*88d15eacSSasha Smundak<<< TestDiff/Reporter/Slices 954*88d15eacSSasha Smundak cmp_test.MyComposite{ 955*88d15eacSSasha Smundak StringA: "", 956*88d15eacSSasha Smundak StringB: "", 957*88d15eacSSasha Smundak- BytesA: []uint8{0x01, 0x02, 0x03}, 958*88d15eacSSasha Smundak+ BytesA: nil, 959*88d15eacSSasha Smundak- BytesB: []cmp_test.MyByte{0x04, 0x05, 0x06}, 960*88d15eacSSasha Smundak+ BytesB: nil, 961*88d15eacSSasha Smundak- BytesC: cmp_test.MyBytes{0x07, 0x08, 0x09}, 962*88d15eacSSasha Smundak+ BytesC: nil, 963*88d15eacSSasha Smundak- IntsA: []int8{-1, -2, -3}, 964*88d15eacSSasha Smundak+ IntsA: nil, 965*88d15eacSSasha Smundak- IntsB: []cmp_test.MyInt{-4, -5, -6}, 966*88d15eacSSasha Smundak+ IntsB: nil, 967*88d15eacSSasha Smundak- IntsC: cmp_test.MyInts{-7, -8, -9}, 968*88d15eacSSasha Smundak+ IntsC: nil, 969*88d15eacSSasha Smundak- UintsA: []uint16{1000, 2000, 3000}, 970*88d15eacSSasha Smundak+ UintsA: nil, 971*88d15eacSSasha Smundak- UintsB: []cmp_test.MyUint{4000, 5000, 6000}, 972*88d15eacSSasha Smundak+ UintsB: nil, 973*88d15eacSSasha Smundak- UintsC: cmp_test.MyUints{7000, 8000, 9000}, 974*88d15eacSSasha Smundak+ UintsC: nil, 975*88d15eacSSasha Smundak- FloatsA: []float32{1.5, 2.5, 3.5}, 976*88d15eacSSasha Smundak+ FloatsA: nil, 977*88d15eacSSasha Smundak- FloatsB: []cmp_test.MyFloat{4.5, 5.5, 6.5}, 978*88d15eacSSasha Smundak+ FloatsB: nil, 979*88d15eacSSasha Smundak- FloatsC: cmp_test.MyFloats{7.5, 8.5, 9.5}, 980*88d15eacSSasha Smundak+ FloatsC: nil, 981*88d15eacSSasha Smundak } 982*88d15eacSSasha Smundak>>> TestDiff/Reporter/Slices 983*88d15eacSSasha Smundak<<< TestDiff/Reporter/EmptySlices 984*88d15eacSSasha Smundak cmp_test.MyComposite{ 985*88d15eacSSasha Smundak StringA: "", 986*88d15eacSSasha Smundak StringB: "", 987*88d15eacSSasha Smundak- BytesA: []uint8{}, 988*88d15eacSSasha Smundak+ BytesA: nil, 989*88d15eacSSasha Smundak- BytesB: []cmp_test.MyByte{}, 990*88d15eacSSasha Smundak+ BytesB: nil, 991*88d15eacSSasha Smundak- BytesC: cmp_test.MyBytes{}, 992*88d15eacSSasha Smundak+ BytesC: nil, 993*88d15eacSSasha Smundak- IntsA: []int8{}, 994*88d15eacSSasha Smundak+ IntsA: nil, 995*88d15eacSSasha Smundak- IntsB: []cmp_test.MyInt{}, 996*88d15eacSSasha Smundak+ IntsB: nil, 997*88d15eacSSasha Smundak- IntsC: cmp_test.MyInts{}, 998*88d15eacSSasha Smundak+ IntsC: nil, 999*88d15eacSSasha Smundak- UintsA: []uint16{}, 1000*88d15eacSSasha Smundak+ UintsA: nil, 1001*88d15eacSSasha Smundak- UintsB: []cmp_test.MyUint{}, 1002*88d15eacSSasha Smundak+ UintsB: nil, 1003*88d15eacSSasha Smundak- UintsC: cmp_test.MyUints{}, 1004*88d15eacSSasha Smundak+ UintsC: nil, 1005*88d15eacSSasha Smundak- FloatsA: []float32{}, 1006*88d15eacSSasha Smundak+ FloatsA: nil, 1007*88d15eacSSasha Smundak- FloatsB: []cmp_test.MyFloat{}, 1008*88d15eacSSasha Smundak+ FloatsB: nil, 1009*88d15eacSSasha Smundak- FloatsC: cmp_test.MyFloats{}, 1010*88d15eacSSasha Smundak+ FloatsC: nil, 1011*88d15eacSSasha Smundak } 1012*88d15eacSSasha Smundak>>> TestDiff/Reporter/EmptySlices 1013*88d15eacSSasha Smundak<<< TestDiff/Reporter/LargeMapKey 1014*88d15eacSSasha Smundak map[*[]uint8]int{ 1015*88d15eacSSasha Smundak- &⟪0xdeadf00f⟫⟪ptr:0xdeadf00f, len:1048576, cap:1048576⟫{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ...}: 0, 1016*88d15eacSSasha Smundak+ &⟪0xdeadf00f⟫⟪ptr:0xdeadf00f, len:1048576, cap:1048576⟫{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ...}: 0, 1017*88d15eacSSasha Smundak } 1018*88d15eacSSasha Smundak>>> TestDiff/Reporter/LargeMapKey 1019*88d15eacSSasha Smundak<<< TestDiff/Reporter/LargeStringInInterface 1020*88d15eacSSasha Smundak struct{ X any }{ 1021*88d15eacSSasha Smundak X: strings.Join({ 1022*88d15eacSSasha Smundak ... // 485 identical bytes 1023*88d15eacSSasha Smundak "s mus. Pellentesque mi lorem, consectetur id porttitor id, solli", 1024*88d15eacSSasha Smundak "citudin sit amet enim. Duis eu dolor magna. Nunc ut augue turpis", 1025*88d15eacSSasha Smundak- ".", 1026*88d15eacSSasha Smundak+ ",", 1027*88d15eacSSasha Smundak }, ""), 1028*88d15eacSSasha Smundak } 1029*88d15eacSSasha Smundak>>> TestDiff/Reporter/LargeStringInInterface 1030*88d15eacSSasha Smundak<<< TestDiff/Reporter/LargeBytesInInterface 1031*88d15eacSSasha Smundak struct{ X any }{ 1032*88d15eacSSasha Smundak X: bytes.Join({ 1033*88d15eacSSasha Smundak ... // 485 identical bytes 1034*88d15eacSSasha Smundak "s mus. Pellentesque mi lorem, consectetur id porttitor id, solli", 1035*88d15eacSSasha Smundak "citudin sit amet enim. Duis eu dolor magna. Nunc ut augue turpis", 1036*88d15eacSSasha Smundak- ".", 1037*88d15eacSSasha Smundak+ ",", 1038*88d15eacSSasha Smundak }, ""), 1039*88d15eacSSasha Smundak } 1040*88d15eacSSasha Smundak>>> TestDiff/Reporter/LargeBytesInInterface 1041*88d15eacSSasha Smundak<<< TestDiff/Reporter/LargeStandaloneString 1042*88d15eacSSasha Smundak struct{ X any }{ 1043*88d15eacSSasha Smundak- X: [1]string{ 1044*88d15eacSSasha Smundak- "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam sit amet pretium ligula, at gravida quam. Integer iaculis, velit at sagittis ultricies, lacus metus scelerisque turpis, ornare feugiat nulla nisl ac erat. Maecenas elementum ultricies libero, sed efficitur lacus molestie non. Nulla ac pretium dolor. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Pellentesque mi lorem, consectetur id porttitor id, sollicitudin sit amet enim. Duis eu dolor magna. Nunc ut augue turpis.", 1045*88d15eacSSasha Smundak- }, 1046*88d15eacSSasha Smundak+ X: [1]string{ 1047*88d15eacSSasha Smundak+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam sit amet pretium ligula, at gravida quam. Integer iaculis, velit at sagittis ultricies, lacus metus scelerisque turpis, ornare feugiat nulla nisl ac erat. Maecenas elementum ultricies libero, sed efficitur lacus molestie non. Nulla ac pretium dolor. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Pellentesque mi lorem, consectetur id porttitor id, sollicitudin sit amet enim. Duis eu dolor magna. Nunc ut augue turpis,", 1048*88d15eacSSasha Smundak+ }, 1049*88d15eacSSasha Smundak } 1050*88d15eacSSasha Smundak>>> TestDiff/Reporter/LargeStandaloneString 1051*88d15eacSSasha Smundak<<< TestDiff/Reporter/SurroundingEqualElements 1052*88d15eacSSasha Smundak strings.Join({ 1053*88d15eacSSasha Smundak "org-4747474747474747,bucket-4242424242424242:m,tag1=a,tag2=aa", 1054*88d15eacSSasha Smundak- ",#=_value", 1055*88d15eacSSasha Smundak ` _value=2 11 org-4747474747474747,bucket-4242424242424242:m,tag1`, 1056*88d15eacSSasha Smundak "=a,tag2=bb", 1057*88d15eacSSasha Smundak- ",#=_value", 1058*88d15eacSSasha Smundak ` _value=2 21 org-4747474747474747,bucket-4242424242424242:m,tag1`, 1059*88d15eacSSasha Smundak "=b,tag2=cc", 1060*88d15eacSSasha Smundak- ",#=_value", 1061*88d15eacSSasha Smundak ` _value=1 21 org-4747474747474747,bucket-4242424242424242:m,tag1`, 1062*88d15eacSSasha Smundak "=a,tag2=dd", 1063*88d15eacSSasha Smundak- ",#=_value", 1064*88d15eacSSasha Smundak ` _value=3 31 org-4747474747474747,bucket-4242424242424242:m,tag1`, 1065*88d15eacSSasha Smundak "=c", 1066*88d15eacSSasha Smundak- ",#=_value", 1067*88d15eacSSasha Smundak ` _value=4 41 `, 1068*88d15eacSSasha Smundak }, "") 1069*88d15eacSSasha Smundak>>> TestDiff/Reporter/SurroundingEqualElements 1070*88d15eacSSasha Smundak<<< TestDiff/Reporter/MostlyTextString 1071*88d15eacSSasha Smundak strings.Join({ 1072*88d15eacSSasha Smundak "org-4747474747474747,bucket-4242424242424242:m,tag1=a,tag2=aa", 1073*88d15eacSSasha Smundak- ",\xff=_value", 1074*88d15eacSSasha Smundak " _value=2 11\norg-4747474747474747,bucket-4242424242424242:m,tag1", 1075*88d15eacSSasha Smundak "=a,tag2=bb", 1076*88d15eacSSasha Smundak- ",\xff=_value", 1077*88d15eacSSasha Smundak " _value=2 21\norg-4747474747474747,bucket-4242424242424242:m,tag1", 1078*88d15eacSSasha Smundak "=b,tag2=cc", 1079*88d15eacSSasha Smundak- ",\xff=_value", 1080*88d15eacSSasha Smundak " _value=1 21\norg-4747474747474747,bucket-4242424242424242:m,tag1", 1081*88d15eacSSasha Smundak "=a,tag2=dd", 1082*88d15eacSSasha Smundak- ",\xff=_value", 1083*88d15eacSSasha Smundak " _value=3 31\norg-4747474747474747,bucket-4242424242424242:m,tag1", 1084*88d15eacSSasha Smundak "=c", 1085*88d15eacSSasha Smundak- ",\xff=_value", 1086*88d15eacSSasha Smundak " _value=4 41\n", 1087*88d15eacSSasha Smundak }, "") 1088*88d15eacSSasha Smundak>>> TestDiff/Reporter/MostlyTextString 1089*88d15eacSSasha Smundak<<< TestDiff/Reporter/AllLinesDiffer 1090*88d15eacSSasha Smundak strings.Join({ 1091*88d15eacSSasha Smundak+ "X", 1092*88d15eacSSasha Smundak "d5c14bdf6bac81c27afc5429500ed750\n", 1093*88d15eacSSasha Smundak+ "X", 1094*88d15eacSSasha Smundak "25483503b557c606dad4f144d27ae10b\n", 1095*88d15eacSSasha Smundak+ "X", 1096*88d15eacSSasha Smundak "90bdbcdbb6ea7156068e3dcfb7459244\n", 1097*88d15eacSSasha Smundak+ "X", 1098*88d15eacSSasha Smundak "978f480a6e3cced51e297fbff9a506b7\n", 1099*88d15eacSSasha Smundak }, "") 1100*88d15eacSSasha Smundak>>> TestDiff/Reporter/AllLinesDiffer 1101*88d15eacSSasha Smundak<<< TestDiff/Reporter/StringifiedBytes 1102*88d15eacSSasha Smundak struct{ X []uint8 }{ 1103*88d15eacSSasha Smundak- X: []uint8("hello, world!"), 1104*88d15eacSSasha Smundak+ X: nil, 1105*88d15eacSSasha Smundak } 1106*88d15eacSSasha Smundak>>> TestDiff/Reporter/StringifiedBytes 1107*88d15eacSSasha Smundak<<< TestDiff/Reporter/NonStringifiedBytes 1108*88d15eacSSasha Smundak struct{ X []uint8 }{ 1109*88d15eacSSasha Smundak- X: []uint8{0xde, 0xad, 0xbe, 0xef}, 1110*88d15eacSSasha Smundak+ X: nil, 1111*88d15eacSSasha Smundak } 1112*88d15eacSSasha Smundak>>> TestDiff/Reporter/NonStringifiedBytes 1113*88d15eacSSasha Smundak<<< TestDiff/Reporter/StringifiedNamedBytes 1114*88d15eacSSasha Smundak struct{ X cmp_test.MyBytes }{ 1115*88d15eacSSasha Smundak- X: cmp_test.MyBytes("hello, world!"), 1116*88d15eacSSasha Smundak+ X: nil, 1117*88d15eacSSasha Smundak } 1118*88d15eacSSasha Smundak>>> TestDiff/Reporter/StringifiedNamedBytes 1119*88d15eacSSasha Smundak<<< TestDiff/Reporter/NonStringifiedNamedBytes 1120*88d15eacSSasha Smundak struct{ X cmp_test.MyBytes }{ 1121*88d15eacSSasha Smundak- X: cmp_test.MyBytes{0xde, 0xad, 0xbe, 0xef}, 1122*88d15eacSSasha Smundak+ X: nil, 1123*88d15eacSSasha Smundak } 1124*88d15eacSSasha Smundak>>> TestDiff/Reporter/NonStringifiedNamedBytes 1125*88d15eacSSasha Smundak<<< TestDiff/Reporter/ShortJSON 1126*88d15eacSSasha Smundak ( 1127*88d15eacSSasha Smundak """ 1128*88d15eacSSasha Smundak { 1129*88d15eacSSasha Smundak- "id": 1, 1130*88d15eacSSasha Smundak+ "id": 1434180, 1131*88d15eacSSasha Smundak "foo": true, 1132*88d15eacSSasha Smundak "bar": true, 1133*88d15eacSSasha Smundak } 1134*88d15eacSSasha Smundak """ 1135*88d15eacSSasha Smundak ) 1136*88d15eacSSasha Smundak>>> TestDiff/Reporter/ShortJSON 1137*88d15eacSSasha Smundak<<< TestDiff/Reporter/PointerToStringOrAny 1138*88d15eacSSasha Smundak any( 1139*88d15eacSSasha Smundak- &string("hello"), 1140*88d15eacSSasha Smundak+ &any(string("hello")), 1141*88d15eacSSasha Smundak ) 1142*88d15eacSSasha Smundak>>> TestDiff/Reporter/PointerToStringOrAny 1143*88d15eacSSasha Smundak<<< TestDiff/Reporter/NamedPointer 1144*88d15eacSSasha Smundak any( 1145*88d15eacSSasha Smundak- &string("hello"), 1146*88d15eacSSasha Smundak+ cmp_test.PointerString(&string("hello")), 1147*88d15eacSSasha Smundak ) 1148*88d15eacSSasha Smundak>>> TestDiff/Reporter/NamedPointer 1149*88d15eacSSasha Smundak<<< TestDiff/Reporter/MapStringAny 1150*88d15eacSSasha Smundak map[string]any{ 1151*88d15eacSSasha Smundak- "key": int(0), 1152*88d15eacSSasha Smundak+ "key": uint(0), 1153*88d15eacSSasha Smundak } 1154*88d15eacSSasha Smundak>>> TestDiff/Reporter/MapStringAny 1155*88d15eacSSasha Smundak<<< TestDiff/Reporter/StructFieldAny 1156*88d15eacSSasha Smundak struct{ X any }{ 1157*88d15eacSSasha Smundak- X: int(0), 1158*88d15eacSSasha Smundak+ X: uint(0), 1159*88d15eacSSasha Smundak } 1160*88d15eacSSasha Smundak>>> TestDiff/Reporter/StructFieldAny 1161*88d15eacSSasha Smundak<<< TestDiff/Reporter/SliceOfBytesText 1162*88d15eacSSasha Smundak [][]uint8{ 1163*88d15eacSSasha Smundak- "hello", 1164*88d15eacSSasha Smundak "foo", 1165*88d15eacSSasha Smundak+ "foo", 1166*88d15eacSSasha Smundak "barbaz", 1167*88d15eacSSasha Smundak+ "added", 1168*88d15eacSSasha Smundak+ "here", 1169*88d15eacSSasha Smundak- "blahdieblah", 1170*88d15eacSSasha Smundak+ "hrmph", 1171*88d15eacSSasha Smundak } 1172*88d15eacSSasha Smundak>>> TestDiff/Reporter/SliceOfBytesText 1173*88d15eacSSasha Smundak<<< TestDiff/Reporter/SliceOfBytesBinary 1174*88d15eacSSasha Smundak [][]uint8{ 1175*88d15eacSSasha Smundak- {0xde, 0xad, 0xbe, 0xef}, 1176*88d15eacSSasha Smundak {0xff, 0x6f, 0x6f}, 1177*88d15eacSSasha Smundak+ "foo", 1178*88d15eacSSasha Smundak "barbaz", 1179*88d15eacSSasha Smundak+ "added", 1180*88d15eacSSasha Smundak+ "here", 1181*88d15eacSSasha Smundak- "blahdieblah", 1182*88d15eacSSasha Smundak+ {0x68, 0x72, 0x6d, 0x70, 0x68, 0xff}, 1183*88d15eacSSasha Smundak } 1184*88d15eacSSasha Smundak>>> TestDiff/Reporter/SliceOfBytesBinary 1185*88d15eacSSasha Smundak<<< TestDiff/Reporter/ManyEscapeCharacters 1186*88d15eacSSasha Smundak ( 1187*88d15eacSSasha Smundak """ 1188*88d15eacSSasha Smundak [ 1189*88d15eacSSasha Smundak- {"Base32": "NA======"}, 1190*88d15eacSSasha Smundak+ {"Base32": "NB======"}, 1191*88d15eacSSasha Smundak {"Base32": "NBSQ===="}, 1192*88d15eacSSasha Smundak {"Base32": "NBSWY==="}, 1193*88d15eacSSasha Smundak ... // 3 identical lines 1194*88d15eacSSasha Smundak """ 1195*88d15eacSSasha Smundak ) 1196*88d15eacSSasha Smundak>>> TestDiff/Reporter/ManyEscapeCharacters 1197*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructA/Inequal 1198*88d15eacSSasha Smundak teststructs.ParentStructA{ 1199*88d15eacSSasha Smundak privateStruct: teststructs.privateStruct{ 1200*88d15eacSSasha Smundak- Public: 1, 1201*88d15eacSSasha Smundak+ Public: 2, 1202*88d15eacSSasha Smundak- private: 2, 1203*88d15eacSSasha Smundak+ private: 3, 1204*88d15eacSSasha Smundak }, 1205*88d15eacSSasha Smundak } 1206*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructA/Inequal 1207*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructB/Inequal 1208*88d15eacSSasha Smundak teststructs.ParentStructB{ 1209*88d15eacSSasha Smundak PublicStruct: teststructs.PublicStruct{ 1210*88d15eacSSasha Smundak- Public: 1, 1211*88d15eacSSasha Smundak+ Public: 2, 1212*88d15eacSSasha Smundak- private: 2, 1213*88d15eacSSasha Smundak+ private: 3, 1214*88d15eacSSasha Smundak }, 1215*88d15eacSSasha Smundak } 1216*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructB/Inequal 1217*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructC/Inequal 1218*88d15eacSSasha Smundak teststructs.ParentStructC{ 1219*88d15eacSSasha Smundak privateStruct: teststructs.privateStruct{ 1220*88d15eacSSasha Smundak- Public: 1, 1221*88d15eacSSasha Smundak+ Public: 2, 1222*88d15eacSSasha Smundak- private: 2, 1223*88d15eacSSasha Smundak+ private: 3, 1224*88d15eacSSasha Smundak }, 1225*88d15eacSSasha Smundak- Public: 3, 1226*88d15eacSSasha Smundak+ Public: 4, 1227*88d15eacSSasha Smundak- private: 4, 1228*88d15eacSSasha Smundak+ private: 5, 1229*88d15eacSSasha Smundak } 1230*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructC/Inequal 1231*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructD/Inequal 1232*88d15eacSSasha Smundak teststructs.ParentStructD{ 1233*88d15eacSSasha Smundak PublicStruct: teststructs.PublicStruct{ 1234*88d15eacSSasha Smundak- Public: 1, 1235*88d15eacSSasha Smundak+ Public: 2, 1236*88d15eacSSasha Smundak- private: 2, 1237*88d15eacSSasha Smundak+ private: 3, 1238*88d15eacSSasha Smundak }, 1239*88d15eacSSasha Smundak- Public: 3, 1240*88d15eacSSasha Smundak+ Public: 4, 1241*88d15eacSSasha Smundak- private: 4, 1242*88d15eacSSasha Smundak+ private: 5, 1243*88d15eacSSasha Smundak } 1244*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructD/Inequal 1245*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructE/Inequal 1246*88d15eacSSasha Smundak teststructs.ParentStructE{ 1247*88d15eacSSasha Smundak privateStruct: teststructs.privateStruct{ 1248*88d15eacSSasha Smundak- Public: 1, 1249*88d15eacSSasha Smundak+ Public: 2, 1250*88d15eacSSasha Smundak- private: 2, 1251*88d15eacSSasha Smundak+ private: 3, 1252*88d15eacSSasha Smundak }, 1253*88d15eacSSasha Smundak PublicStruct: teststructs.PublicStruct{ 1254*88d15eacSSasha Smundak- Public: 3, 1255*88d15eacSSasha Smundak+ Public: 4, 1256*88d15eacSSasha Smundak- private: 4, 1257*88d15eacSSasha Smundak+ private: 5, 1258*88d15eacSSasha Smundak }, 1259*88d15eacSSasha Smundak } 1260*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructE/Inequal 1261*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructF/Inequal 1262*88d15eacSSasha Smundak teststructs.ParentStructF{ 1263*88d15eacSSasha Smundak privateStruct: teststructs.privateStruct{ 1264*88d15eacSSasha Smundak- Public: 1, 1265*88d15eacSSasha Smundak+ Public: 2, 1266*88d15eacSSasha Smundak- private: 2, 1267*88d15eacSSasha Smundak+ private: 3, 1268*88d15eacSSasha Smundak }, 1269*88d15eacSSasha Smundak PublicStruct: teststructs.PublicStruct{ 1270*88d15eacSSasha Smundak- Public: 3, 1271*88d15eacSSasha Smundak+ Public: 4, 1272*88d15eacSSasha Smundak- private: 4, 1273*88d15eacSSasha Smundak+ private: 5, 1274*88d15eacSSasha Smundak }, 1275*88d15eacSSasha Smundak- Public: 5, 1276*88d15eacSSasha Smundak+ Public: 6, 1277*88d15eacSSasha Smundak- private: 6, 1278*88d15eacSSasha Smundak+ private: 7, 1279*88d15eacSSasha Smundak } 1280*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructF/Inequal 1281*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructG/Inequal 1282*88d15eacSSasha Smundak &teststructs.ParentStructG{ 1283*88d15eacSSasha Smundak privateStruct: &teststructs.privateStruct{ 1284*88d15eacSSasha Smundak- Public: 1, 1285*88d15eacSSasha Smundak+ Public: 2, 1286*88d15eacSSasha Smundak- private: 2, 1287*88d15eacSSasha Smundak+ private: 3, 1288*88d15eacSSasha Smundak }, 1289*88d15eacSSasha Smundak } 1290*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructG/Inequal 1291*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructH/Inequal 1292*88d15eacSSasha Smundak &teststructs.ParentStructH{ 1293*88d15eacSSasha Smundak PublicStruct: &teststructs.PublicStruct{ 1294*88d15eacSSasha Smundak- Public: 1, 1295*88d15eacSSasha Smundak+ Public: 2, 1296*88d15eacSSasha Smundak- private: 2, 1297*88d15eacSSasha Smundak+ private: 3, 1298*88d15eacSSasha Smundak }, 1299*88d15eacSSasha Smundak } 1300*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructH/Inequal 1301*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructI/Inequal 1302*88d15eacSSasha Smundak &teststructs.ParentStructI{ 1303*88d15eacSSasha Smundak privateStruct: &teststructs.privateStruct{ 1304*88d15eacSSasha Smundak- Public: 1, 1305*88d15eacSSasha Smundak+ Public: 2, 1306*88d15eacSSasha Smundak- private: 2, 1307*88d15eacSSasha Smundak+ private: 3, 1308*88d15eacSSasha Smundak }, 1309*88d15eacSSasha Smundak PublicStruct: &teststructs.PublicStruct{ 1310*88d15eacSSasha Smundak- Public: 3, 1311*88d15eacSSasha Smundak+ Public: 4, 1312*88d15eacSSasha Smundak- private: 4, 1313*88d15eacSSasha Smundak+ private: 5, 1314*88d15eacSSasha Smundak }, 1315*88d15eacSSasha Smundak } 1316*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructI/Inequal 1317*88d15eacSSasha Smundak<<< TestDiff/EmbeddedStruct/ParentStructJ/Inequal 1318*88d15eacSSasha Smundak &teststructs.ParentStructJ{ 1319*88d15eacSSasha Smundak privateStruct: &teststructs.privateStruct{ 1320*88d15eacSSasha Smundak- Public: 1, 1321*88d15eacSSasha Smundak+ Public: 2, 1322*88d15eacSSasha Smundak- private: 2, 1323*88d15eacSSasha Smundak+ private: 3, 1324*88d15eacSSasha Smundak }, 1325*88d15eacSSasha Smundak PublicStruct: &teststructs.PublicStruct{ 1326*88d15eacSSasha Smundak- Public: 3, 1327*88d15eacSSasha Smundak+ Public: 4, 1328*88d15eacSSasha Smundak- private: 4, 1329*88d15eacSSasha Smundak+ private: 5, 1330*88d15eacSSasha Smundak }, 1331*88d15eacSSasha Smundak Public: teststructs.PublicStruct{ 1332*88d15eacSSasha Smundak- Public: 7, 1333*88d15eacSSasha Smundak+ Public: 8, 1334*88d15eacSSasha Smundak- private: 8, 1335*88d15eacSSasha Smundak+ private: 9, 1336*88d15eacSSasha Smundak }, 1337*88d15eacSSasha Smundak private: teststructs.privateStruct{ 1338*88d15eacSSasha Smundak- Public: 5, 1339*88d15eacSSasha Smundak+ Public: 6, 1340*88d15eacSSasha Smundak- private: 6, 1341*88d15eacSSasha Smundak+ private: 7, 1342*88d15eacSSasha Smundak }, 1343*88d15eacSSasha Smundak } 1344*88d15eacSSasha Smundak>>> TestDiff/EmbeddedStruct/ParentStructJ/Inequal 1345*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructB/ValueInequal 1346*88d15eacSSasha Smundak teststructs.StructB{ 1347*88d15eacSSasha Smundak- X: "NotEqual", 1348*88d15eacSSasha Smundak+ X: "not_equal", 1349*88d15eacSSasha Smundak } 1350*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructB/ValueInequal 1351*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructD/ValueInequal 1352*88d15eacSSasha Smundak teststructs.StructD{ 1353*88d15eacSSasha Smundak- X: "NotEqual", 1354*88d15eacSSasha Smundak+ X: "not_equal", 1355*88d15eacSSasha Smundak } 1356*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructD/ValueInequal 1357*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructE/ValueInequal 1358*88d15eacSSasha Smundak teststructs.StructE{ 1359*88d15eacSSasha Smundak- X: "NotEqual", 1360*88d15eacSSasha Smundak+ X: "not_equal", 1361*88d15eacSSasha Smundak } 1362*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructE/ValueInequal 1363*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructF/ValueInequal 1364*88d15eacSSasha Smundak teststructs.StructF{ 1365*88d15eacSSasha Smundak- X: "NotEqual", 1366*88d15eacSSasha Smundak+ X: "not_equal", 1367*88d15eacSSasha Smundak } 1368*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructF/ValueInequal 1369*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructA1/ValueInequal 1370*88d15eacSSasha Smundak teststructs.StructA1{ 1371*88d15eacSSasha Smundak StructA: {X: "NotEqual"}, 1372*88d15eacSSasha Smundak- X: "NotEqual", 1373*88d15eacSSasha Smundak+ X: "not_equal", 1374*88d15eacSSasha Smundak } 1375*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructA1/ValueInequal 1376*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructA1/PointerInequal 1377*88d15eacSSasha Smundak &teststructs.StructA1{ 1378*88d15eacSSasha Smundak StructA: {X: "NotEqual"}, 1379*88d15eacSSasha Smundak- X: "NotEqual", 1380*88d15eacSSasha Smundak+ X: "not_equal", 1381*88d15eacSSasha Smundak } 1382*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructA1/PointerInequal 1383*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructB1/ValueInequal 1384*88d15eacSSasha Smundak teststructs.StructB1{ 1385*88d15eacSSasha Smundak StructB: Inverse(Addr, &teststructs.StructB{X: "NotEqual"}), 1386*88d15eacSSasha Smundak- X: "NotEqual", 1387*88d15eacSSasha Smundak+ X: "not_equal", 1388*88d15eacSSasha Smundak } 1389*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructB1/ValueInequal 1390*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructB1/PointerInequal 1391*88d15eacSSasha Smundak &teststructs.StructB1{ 1392*88d15eacSSasha Smundak StructB: Inverse(Addr, &teststructs.StructB{X: "NotEqual"}), 1393*88d15eacSSasha Smundak- X: "NotEqual", 1394*88d15eacSSasha Smundak+ X: "not_equal", 1395*88d15eacSSasha Smundak } 1396*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructB1/PointerInequal 1397*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructD1/ValueInequal 1398*88d15eacSSasha Smundak teststructs.StructD1{ 1399*88d15eacSSasha Smundak- StructD: teststructs.StructD{X: "NotEqual"}, 1400*88d15eacSSasha Smundak+ StructD: teststructs.StructD{X: "not_equal"}, 1401*88d15eacSSasha Smundak- X: "NotEqual", 1402*88d15eacSSasha Smundak+ X: "not_equal", 1403*88d15eacSSasha Smundak } 1404*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructD1/ValueInequal 1405*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructE1/ValueInequal 1406*88d15eacSSasha Smundak teststructs.StructE1{ 1407*88d15eacSSasha Smundak- StructE: teststructs.StructE{X: "NotEqual"}, 1408*88d15eacSSasha Smundak+ StructE: teststructs.StructE{X: "not_equal"}, 1409*88d15eacSSasha Smundak- X: "NotEqual", 1410*88d15eacSSasha Smundak+ X: "not_equal", 1411*88d15eacSSasha Smundak } 1412*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructE1/ValueInequal 1413*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructF1/ValueInequal 1414*88d15eacSSasha Smundak teststructs.StructF1{ 1415*88d15eacSSasha Smundak- StructF: teststructs.StructF{X: "NotEqual"}, 1416*88d15eacSSasha Smundak+ StructF: teststructs.StructF{X: "not_equal"}, 1417*88d15eacSSasha Smundak- X: "NotEqual", 1418*88d15eacSSasha Smundak+ X: "not_equal", 1419*88d15eacSSasha Smundak } 1420*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructF1/ValueInequal 1421*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructA2/ValueInequal 1422*88d15eacSSasha Smundak teststructs.StructA2{ 1423*88d15eacSSasha Smundak StructA: &{X: "NotEqual"}, 1424*88d15eacSSasha Smundak- X: "NotEqual", 1425*88d15eacSSasha Smundak+ X: "not_equal", 1426*88d15eacSSasha Smundak } 1427*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructA2/ValueInequal 1428*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructA2/PointerInequal 1429*88d15eacSSasha Smundak &teststructs.StructA2{ 1430*88d15eacSSasha Smundak StructA: &{X: "NotEqual"}, 1431*88d15eacSSasha Smundak- X: "NotEqual", 1432*88d15eacSSasha Smundak+ X: "not_equal", 1433*88d15eacSSasha Smundak } 1434*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructA2/PointerInequal 1435*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructB2/ValueInequal 1436*88d15eacSSasha Smundak teststructs.StructB2{ 1437*88d15eacSSasha Smundak StructB: &{X: "NotEqual"}, 1438*88d15eacSSasha Smundak- X: "NotEqual", 1439*88d15eacSSasha Smundak+ X: "not_equal", 1440*88d15eacSSasha Smundak } 1441*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructB2/ValueInequal 1442*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructB2/PointerInequal 1443*88d15eacSSasha Smundak &teststructs.StructB2{ 1444*88d15eacSSasha Smundak StructB: &{X: "NotEqual"}, 1445*88d15eacSSasha Smundak- X: "NotEqual", 1446*88d15eacSSasha Smundak+ X: "not_equal", 1447*88d15eacSSasha Smundak } 1448*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructB2/PointerInequal 1449*88d15eacSSasha Smundak<<< TestDiff/EqualMethod/StructNo/Inequal 1450*88d15eacSSasha Smundak teststructs.StructNo{ 1451*88d15eacSSasha Smundak- X: "NotEqual", 1452*88d15eacSSasha Smundak+ X: "not_equal", 1453*88d15eacSSasha Smundak } 1454*88d15eacSSasha Smundak>>> TestDiff/EqualMethod/StructNo/Inequal 1455*88d15eacSSasha Smundak<<< TestDiff/Cycle/PointersInequal 1456*88d15eacSSasha Smundak &&⟪ref#0⟫cmp_test.P( 1457*88d15eacSSasha Smundak- &⟪ref#0⟫(...), 1458*88d15eacSSasha Smundak+ &&⟪ref#0⟫(...), 1459*88d15eacSSasha Smundak ) 1460*88d15eacSSasha Smundak>>> TestDiff/Cycle/PointersInequal 1461*88d15eacSSasha Smundak<<< TestDiff/Cycle/SlicesInequal 1462*88d15eacSSasha Smundak cmp_test.S{ 1463*88d15eacSSasha Smundak- ⟪ref#0⟫{⟪ref#0⟫(...)}, 1464*88d15eacSSasha Smundak+ ⟪ref#1⟫{{⟪ref#1⟫(...)}}, 1465*88d15eacSSasha Smundak } 1466*88d15eacSSasha Smundak>>> TestDiff/Cycle/SlicesInequal 1467*88d15eacSSasha Smundak<<< TestDiff/Cycle/MapsInequal 1468*88d15eacSSasha Smundak cmp_test.M⟪ref#0⟫{ 1469*88d15eacSSasha Smundak- 0: ⟪ref#0⟫(...), 1470*88d15eacSSasha Smundak+ 0: {0: ⟪ref#0⟫(...)}, 1471*88d15eacSSasha Smundak } 1472*88d15eacSSasha Smundak>>> TestDiff/Cycle/MapsInequal 1473*88d15eacSSasha Smundak<<< TestDiff/Cycle/GraphInequalZeroed 1474*88d15eacSSasha Smundak map[string]*cmp_test.CycleAlpha{ 1475*88d15eacSSasha Smundak "Bar": &⟪ref#0⟫{ 1476*88d15eacSSasha Smundak Name: "Bar", 1477*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1478*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫{ 1479*88d15eacSSasha Smundak- ID: 102, 1480*88d15eacSSasha Smundak+ ID: 0, 1481*88d15eacSSasha Smundak Name: "BarBuzzBravo", 1482*88d15eacSSasha Smundak Mods: 2, 1483*88d15eacSSasha Smundak Alphas: map[string]*cmp_test.CycleAlpha{ 1484*88d15eacSSasha Smundak "Bar": &⟪ref#0⟫(...), 1485*88d15eacSSasha Smundak "Buzz": &⟪ref#2⟫{ 1486*88d15eacSSasha Smundak Name: "Buzz", 1487*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1488*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫(...), 1489*88d15eacSSasha Smundak "BuzzBarBravo": &⟪ref#3⟫{ 1490*88d15eacSSasha Smundak- ID: 103, 1491*88d15eacSSasha Smundak+ ID: 0, 1492*88d15eacSSasha Smundak Name: "BuzzBarBravo", 1493*88d15eacSSasha Smundak Mods: 0, 1494*88d15eacSSasha Smundak Alphas: {"Bar": &⟪ref#0⟫(...), "Buzz": &⟪ref#2⟫(...)}, 1495*88d15eacSSasha Smundak }, 1496*88d15eacSSasha Smundak }, 1497*88d15eacSSasha Smundak }, 1498*88d15eacSSasha Smundak }, 1499*88d15eacSSasha Smundak }, 1500*88d15eacSSasha Smundak "BuzzBarBravo": &⟪ref#3⟫{ 1501*88d15eacSSasha Smundak- ID: 103, 1502*88d15eacSSasha Smundak+ ID: 0, 1503*88d15eacSSasha Smundak Name: "BuzzBarBravo", 1504*88d15eacSSasha Smundak Mods: 0, 1505*88d15eacSSasha Smundak Alphas: map[string]*cmp_test.CycleAlpha{ 1506*88d15eacSSasha Smundak "Bar": &⟪ref#0⟫(...), 1507*88d15eacSSasha Smundak "Buzz": &⟪ref#2⟫{ 1508*88d15eacSSasha Smundak Name: "Buzz", 1509*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1510*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫{ 1511*88d15eacSSasha Smundak- ID: 102, 1512*88d15eacSSasha Smundak+ ID: 0, 1513*88d15eacSSasha Smundak Name: "BarBuzzBravo", 1514*88d15eacSSasha Smundak Mods: 2, 1515*88d15eacSSasha Smundak Alphas: {"Bar": &⟪ref#0⟫(...), "Buzz": &⟪ref#2⟫(...)}, 1516*88d15eacSSasha Smundak }, 1517*88d15eacSSasha Smundak "BuzzBarBravo": &⟪ref#3⟫(...), 1518*88d15eacSSasha Smundak }, 1519*88d15eacSSasha Smundak }, 1520*88d15eacSSasha Smundak }, 1521*88d15eacSSasha Smundak }, 1522*88d15eacSSasha Smundak }, 1523*88d15eacSSasha Smundak }, 1524*88d15eacSSasha Smundak "Buzz": &⟪ref#2⟫{ 1525*88d15eacSSasha Smundak Name: "Buzz", 1526*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1527*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫{ 1528*88d15eacSSasha Smundak- ID: 102, 1529*88d15eacSSasha Smundak+ ID: 0, 1530*88d15eacSSasha Smundak Name: "BarBuzzBravo", 1531*88d15eacSSasha Smundak Mods: 2, 1532*88d15eacSSasha Smundak Alphas: map[string]*cmp_test.CycleAlpha{ 1533*88d15eacSSasha Smundak "Bar": &⟪ref#0⟫{ 1534*88d15eacSSasha Smundak Name: "Bar", 1535*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1536*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫(...), 1537*88d15eacSSasha Smundak "BuzzBarBravo": &⟪ref#3⟫{ 1538*88d15eacSSasha Smundak- ID: 103, 1539*88d15eacSSasha Smundak+ ID: 0, 1540*88d15eacSSasha Smundak Name: "BuzzBarBravo", 1541*88d15eacSSasha Smundak Mods: 0, 1542*88d15eacSSasha Smundak Alphas: {"Bar": &⟪ref#0⟫(...), "Buzz": &⟪ref#2⟫(...)}, 1543*88d15eacSSasha Smundak }, 1544*88d15eacSSasha Smundak }, 1545*88d15eacSSasha Smundak }, 1546*88d15eacSSasha Smundak "Buzz": &⟪ref#2⟫(...), 1547*88d15eacSSasha Smundak }, 1548*88d15eacSSasha Smundak }, 1549*88d15eacSSasha Smundak "BuzzBarBravo": &⟪ref#3⟫{ 1550*88d15eacSSasha Smundak- ID: 103, 1551*88d15eacSSasha Smundak+ ID: 0, 1552*88d15eacSSasha Smundak Name: "BuzzBarBravo", 1553*88d15eacSSasha Smundak Mods: 0, 1554*88d15eacSSasha Smundak Alphas: map[string]*cmp_test.CycleAlpha{ 1555*88d15eacSSasha Smundak "Bar": &⟪ref#0⟫{ 1556*88d15eacSSasha Smundak Name: "Bar", 1557*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1558*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫{ 1559*88d15eacSSasha Smundak- ID: 102, 1560*88d15eacSSasha Smundak+ ID: 0, 1561*88d15eacSSasha Smundak Name: "BarBuzzBravo", 1562*88d15eacSSasha Smundak Mods: 2, 1563*88d15eacSSasha Smundak Alphas: {"Bar": &⟪ref#0⟫(...), "Buzz": &⟪ref#2⟫(...)}, 1564*88d15eacSSasha Smundak }, 1565*88d15eacSSasha Smundak "BuzzBarBravo": &⟪ref#3⟫(...), 1566*88d15eacSSasha Smundak }, 1567*88d15eacSSasha Smundak }, 1568*88d15eacSSasha Smundak "Buzz": &⟪ref#2⟫(...), 1569*88d15eacSSasha Smundak }, 1570*88d15eacSSasha Smundak }, 1571*88d15eacSSasha Smundak }, 1572*88d15eacSSasha Smundak }, 1573*88d15eacSSasha Smundak "Foo": &⟪ref#4⟫{ 1574*88d15eacSSasha Smundak Name: "Foo", 1575*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1576*88d15eacSSasha Smundak "FooBravo": &{ 1577*88d15eacSSasha Smundak- ID: 101, 1578*88d15eacSSasha Smundak+ ID: 0, 1579*88d15eacSSasha Smundak Name: "FooBravo", 1580*88d15eacSSasha Smundak Mods: 100, 1581*88d15eacSSasha Smundak Alphas: {"Foo": &⟪ref#4⟫(...)}, 1582*88d15eacSSasha Smundak }, 1583*88d15eacSSasha Smundak }, 1584*88d15eacSSasha Smundak }, 1585*88d15eacSSasha Smundak } 1586*88d15eacSSasha Smundak>>> TestDiff/Cycle/GraphInequalZeroed 1587*88d15eacSSasha Smundak<<< TestDiff/Cycle/GraphInequalStruct 1588*88d15eacSSasha Smundak map[string]*cmp_test.CycleAlpha{ 1589*88d15eacSSasha Smundak "Bar": &⟪ref#0⟫{ 1590*88d15eacSSasha Smundak Name: "Bar", 1591*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1592*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫{ 1593*88d15eacSSasha Smundak ID: 102, 1594*88d15eacSSasha Smundak Name: "BarBuzzBravo", 1595*88d15eacSSasha Smundak Mods: 2, 1596*88d15eacSSasha Smundak Alphas: map[string]*cmp_test.CycleAlpha{ 1597*88d15eacSSasha Smundak "Bar": &⟪ref#0⟫(...), 1598*88d15eacSSasha Smundak "Buzz": &⟪ref#2⟫{ 1599*88d15eacSSasha Smundak Name: "Buzz", 1600*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1601*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫(...), 1602*88d15eacSSasha Smundak "BuzzBarBravo": &⟪ref#3⟫{ 1603*88d15eacSSasha Smundak ID: 103, 1604*88d15eacSSasha Smundak Name: "BuzzBarBravo", 1605*88d15eacSSasha Smundak Mods: 0, 1606*88d15eacSSasha Smundak- Alphas: nil, 1607*88d15eacSSasha Smundak+ Alphas: map[string]*cmp_test.CycleAlpha{"Bar": &⟪ref#0⟫(...), "Buzz": &⟪ref#2⟫(...)}, 1608*88d15eacSSasha Smundak }, 1609*88d15eacSSasha Smundak }, 1610*88d15eacSSasha Smundak }, 1611*88d15eacSSasha Smundak }, 1612*88d15eacSSasha Smundak }, 1613*88d15eacSSasha Smundak "BuzzBarBravo": &⟪ref#3⟫{ 1614*88d15eacSSasha Smundak ID: 103, 1615*88d15eacSSasha Smundak Name: "BuzzBarBravo", 1616*88d15eacSSasha Smundak Mods: 0, 1617*88d15eacSSasha Smundak Alphas: map[string]*cmp_test.CycleAlpha{ 1618*88d15eacSSasha Smundak "Bar": &⟪ref#0⟫(...), 1619*88d15eacSSasha Smundak "Buzz": &⟪ref#2⟫{ 1620*88d15eacSSasha Smundak Name: "Buzz", 1621*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1622*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫{ID: 102, Name: "BarBuzzBravo", Mods: 2, Alphas: {"Bar": &⟪ref#0⟫(...), "Buzz": &⟪ref#2⟫(...)}}, 1623*88d15eacSSasha Smundak- "BuzzBarBravo": &{ID: 103, Name: "BuzzBarBravo"}, 1624*88d15eacSSasha Smundak+ "BuzzBarBravo": &⟪ref#3⟫(...), 1625*88d15eacSSasha Smundak }, 1626*88d15eacSSasha Smundak }, 1627*88d15eacSSasha Smundak }, 1628*88d15eacSSasha Smundak }, 1629*88d15eacSSasha Smundak }, 1630*88d15eacSSasha Smundak }, 1631*88d15eacSSasha Smundak "Buzz": &⟪ref#2⟫{ 1632*88d15eacSSasha Smundak Name: "Buzz", 1633*88d15eacSSasha Smundak Bravos: map[string]*cmp_test.CycleBravo{ 1634*88d15eacSSasha Smundak "BarBuzzBravo": &⟪ref#1⟫{ID: 102, Name: "BarBuzzBravo", Mods: 2, Alphas: {"Bar": &⟪ref#0⟫{Name: "Bar", Bravos: {"BarBuzzBravo": &⟪ref#1⟫(...), "BuzzBarBravo": &⟪ref#3⟫{ID: 103, Name: "BuzzBarBravo", Alphas: {"Bar": &⟪ref#0⟫(...), "Buzz": &⟪ref#2⟫(...)}}}}, "Buzz": &⟪ref#2⟫(...)}}, 1635*88d15eacSSasha Smundak "BuzzBarBravo": &⟪ref#3⟫{ 1636*88d15eacSSasha Smundak ID: 103, 1637*88d15eacSSasha Smundak Name: "BuzzBarBravo", 1638*88d15eacSSasha Smundak Mods: 0, 1639*88d15eacSSasha Smundak- Alphas: nil, 1640*88d15eacSSasha Smundak+ Alphas: map[string]*cmp_test.CycleAlpha{ 1641*88d15eacSSasha Smundak+ "Bar": &⟪ref#0⟫{ 1642*88d15eacSSasha Smundak+ Name: "Bar", 1643*88d15eacSSasha Smundak+ Bravos: map[string]*cmp_test.CycleBravo{"BarBuzzBravo": &⟪ref#1⟫{...}, "BuzzBarBravo": &⟪ref#3⟫(...)}, 1644*88d15eacSSasha Smundak+ }, 1645*88d15eacSSasha Smundak+ "Buzz": &⟪ref#2⟫(...), 1646*88d15eacSSasha Smundak+ }, 1647*88d15eacSSasha Smundak }, 1648*88d15eacSSasha Smundak }, 1649*88d15eacSSasha Smundak }, 1650*88d15eacSSasha Smundak "Foo": &⟪ref#4⟫{Name: "Foo", Bravos: {"FooBravo": &{ID: 101, Name: "FooBravo", Mods: 100, Alphas: {"Foo": &⟪ref#4⟫(...)}}}}, 1651*88d15eacSSasha Smundak } 1652*88d15eacSSasha Smundak>>> TestDiff/Cycle/GraphInequalStruct 1653*88d15eacSSasha Smundak<<< TestDiff/Project1/ProtoInequal 1654*88d15eacSSasha Smundak teststructs.Eagle{ 1655*88d15eacSSasha Smundak ... // 4 identical fields 1656*88d15eacSSasha Smundak Dreamers: nil, 1657*88d15eacSSasha Smundak Prong: 0, 1658*88d15eacSSasha Smundak Slaps: []teststructs.Slap{ 1659*88d15eacSSasha Smundak ... // 2 identical elements 1660*88d15eacSSasha Smundak {}, 1661*88d15eacSSasha Smundak {}, 1662*88d15eacSSasha Smundak { 1663*88d15eacSSasha Smundak Name: "", 1664*88d15eacSSasha Smundak Desc: "", 1665*88d15eacSSasha Smundak DescLong: "", 1666*88d15eacSSasha Smundak- Args: s"metadata", 1667*88d15eacSSasha Smundak+ Args: s"metadata2", 1668*88d15eacSSasha Smundak Tense: 0, 1669*88d15eacSSasha Smundak Interval: 0, 1670*88d15eacSSasha Smundak ... // 3 identical fields 1671*88d15eacSSasha Smundak }, 1672*88d15eacSSasha Smundak }, 1673*88d15eacSSasha Smundak StateGoverner: "", 1674*88d15eacSSasha Smundak PrankRating: "", 1675*88d15eacSSasha Smundak ... // 2 identical fields 1676*88d15eacSSasha Smundak } 1677*88d15eacSSasha Smundak>>> TestDiff/Project1/ProtoInequal 1678*88d15eacSSasha Smundak<<< TestDiff/Project1/Inequal 1679*88d15eacSSasha Smundak teststructs.Eagle{ 1680*88d15eacSSasha Smundak ... // 2 identical fields 1681*88d15eacSSasha Smundak Desc: "some description", 1682*88d15eacSSasha Smundak DescLong: "", 1683*88d15eacSSasha Smundak Dreamers: []teststructs.Dreamer{ 1684*88d15eacSSasha Smundak {}, 1685*88d15eacSSasha Smundak { 1686*88d15eacSSasha Smundak ... // 4 identical fields 1687*88d15eacSSasha Smundak ContSlaps: nil, 1688*88d15eacSSasha Smundak ContSlapsInterval: 0, 1689*88d15eacSSasha Smundak Animal: []any{ 1690*88d15eacSSasha Smundak teststructs.Goat{ 1691*88d15eacSSasha Smundak Target: "corporation", 1692*88d15eacSSasha Smundak Slaps: nil, 1693*88d15eacSSasha Smundak FunnyPrank: "", 1694*88d15eacSSasha Smundak Immutable: &teststructs.GoatImmutable{ 1695*88d15eacSSasha Smundak- ID: "southbay2", 1696*88d15eacSSasha Smundak+ ID: "southbay", 1697*88d15eacSSasha Smundak- State: &6, 1698*88d15eacSSasha Smundak+ State: &5, 1699*88d15eacSSasha Smundak Started: s"2009-11-10 23:00:00 +0000 UTC", 1700*88d15eacSSasha Smundak Stopped: s"0001-01-01 00:00:00 +0000 UTC", 1701*88d15eacSSasha Smundak ... // 1 ignored and 1 identical fields 1702*88d15eacSSasha Smundak }, 1703*88d15eacSSasha Smundak }, 1704*88d15eacSSasha Smundak teststructs.Donkey{}, 1705*88d15eacSSasha Smundak }, 1706*88d15eacSSasha Smundak Ornamental: false, 1707*88d15eacSSasha Smundak Amoeba: 53, 1708*88d15eacSSasha Smundak ... // 5 identical fields 1709*88d15eacSSasha Smundak }, 1710*88d15eacSSasha Smundak }, 1711*88d15eacSSasha Smundak Prong: 0, 1712*88d15eacSSasha Smundak Slaps: []teststructs.Slap{ 1713*88d15eacSSasha Smundak { 1714*88d15eacSSasha Smundak ... // 6 identical fields 1715*88d15eacSSasha Smundak Homeland: 0, 1716*88d15eacSSasha Smundak FunnyPrank: "", 1717*88d15eacSSasha Smundak Immutable: &teststructs.SlapImmutable{ 1718*88d15eacSSasha Smundak ID: "immutableSlap", 1719*88d15eacSSasha Smundak Out: nil, 1720*88d15eacSSasha Smundak- MildSlap: false, 1721*88d15eacSSasha Smundak+ MildSlap: true, 1722*88d15eacSSasha Smundak PrettyPrint: "", 1723*88d15eacSSasha Smundak State: nil, 1724*88d15eacSSasha Smundak Started: s"2009-11-10 23:00:00 +0000 UTC", 1725*88d15eacSSasha Smundak Stopped: s"0001-01-01 00:00:00 +0000 UTC", 1726*88d15eacSSasha Smundak LastUpdate: s"0001-01-01 00:00:00 +0000 UTC", 1727*88d15eacSSasha Smundak LoveRadius: &teststructs.LoveRadius{ 1728*88d15eacSSasha Smundak Summer: &teststructs.SummerLove{ 1729*88d15eacSSasha Smundak Summary: &teststructs.SummerLoveSummary{ 1730*88d15eacSSasha Smundak Devices: []string{ 1731*88d15eacSSasha Smundak "foo", 1732*88d15eacSSasha Smundak- "bar", 1733*88d15eacSSasha Smundak- "baz", 1734*88d15eacSSasha Smundak }, 1735*88d15eacSSasha Smundak ChangeType: {1, 2, 3}, 1736*88d15eacSSasha Smundak ... // 1 ignored field 1737*88d15eacSSasha Smundak }, 1738*88d15eacSSasha Smundak ... // 1 ignored field 1739*88d15eacSSasha Smundak }, 1740*88d15eacSSasha Smundak ... // 1 ignored field 1741*88d15eacSSasha Smundak }, 1742*88d15eacSSasha Smundak ... // 1 ignored field 1743*88d15eacSSasha Smundak }, 1744*88d15eacSSasha Smundak }, 1745*88d15eacSSasha Smundak }, 1746*88d15eacSSasha Smundak StateGoverner: "", 1747*88d15eacSSasha Smundak PrankRating: "", 1748*88d15eacSSasha Smundak ... // 2 identical fields 1749*88d15eacSSasha Smundak } 1750*88d15eacSSasha Smundak>>> TestDiff/Project1/Inequal 1751*88d15eacSSasha Smundak<<< TestDiff/Project2/InequalOrder 1752*88d15eacSSasha Smundak teststructs.GermBatch{ 1753*88d15eacSSasha Smundak DirtyGerms: map[int32][]*testprotos.Germ{ 1754*88d15eacSSasha Smundak 17: {s"germ1"}, 1755*88d15eacSSasha Smundak 18: { 1756*88d15eacSSasha Smundak- s"germ2", 1757*88d15eacSSasha Smundak s"germ3", 1758*88d15eacSSasha Smundak s"germ4", 1759*88d15eacSSasha Smundak+ s"germ2", 1760*88d15eacSSasha Smundak }, 1761*88d15eacSSasha Smundak }, 1762*88d15eacSSasha Smundak CleanGerms: nil, 1763*88d15eacSSasha Smundak GermMap: {13: s"germ13", 21: s"germ21"}, 1764*88d15eacSSasha Smundak ... // 7 identical fields 1765*88d15eacSSasha Smundak } 1766*88d15eacSSasha Smundak>>> TestDiff/Project2/InequalOrder 1767*88d15eacSSasha Smundak<<< TestDiff/Project2/Inequal 1768*88d15eacSSasha Smundak teststructs.GermBatch{ 1769*88d15eacSSasha Smundak DirtyGerms: map[int32][]*testprotos.Germ{ 1770*88d15eacSSasha Smundak+ 17: {s"germ1"}, 1771*88d15eacSSasha Smundak 18: Inverse(Sort, []*testprotos.Germ{ 1772*88d15eacSSasha Smundak s"germ2", 1773*88d15eacSSasha Smundak s"germ3", 1774*88d15eacSSasha Smundak- s"germ4", 1775*88d15eacSSasha Smundak }), 1776*88d15eacSSasha Smundak }, 1777*88d15eacSSasha Smundak CleanGerms: nil, 1778*88d15eacSSasha Smundak GermMap: {13: s"germ13", 21: s"germ21"}, 1779*88d15eacSSasha Smundak DishMap: map[int32]*teststructs.Dish{ 1780*88d15eacSSasha Smundak 0: &{err: e"EOF"}, 1781*88d15eacSSasha Smundak- 1: nil, 1782*88d15eacSSasha Smundak+ 1: &{err: e"unexpected EOF"}, 1783*88d15eacSSasha Smundak 2: &{pb: s"dish"}, 1784*88d15eacSSasha Smundak }, 1785*88d15eacSSasha Smundak HasPreviousResult: true, 1786*88d15eacSSasha Smundak DirtyID: 10, 1787*88d15eacSSasha Smundak CleanID: 0, 1788*88d15eacSSasha Smundak- GermStrain: 421, 1789*88d15eacSSasha Smundak+ GermStrain: 22, 1790*88d15eacSSasha Smundak TotalDirtyGerms: 0, 1791*88d15eacSSasha Smundak InfectedAt: s"2009-11-10 23:00:00 +0000 UTC", 1792*88d15eacSSasha Smundak } 1793*88d15eacSSasha Smundak>>> TestDiff/Project2/Inequal 1794*88d15eacSSasha Smundak<<< TestDiff/Project3/Inequal 1795*88d15eacSSasha Smundak teststructs.Dirt{ 1796*88d15eacSSasha Smundak- table: &teststructs.MockTable{state: []string{"a", "c"}}, 1797*88d15eacSSasha Smundak+ table: &teststructs.MockTable{state: []string{"a", "b", "c"}}, 1798*88d15eacSSasha Smundak ts: 12345, 1799*88d15eacSSasha Smundak- Discord: 554, 1800*88d15eacSSasha Smundak+ Discord: 500, 1801*88d15eacSSasha Smundak- Proto: testprotos.Dirt(Inverse(λ, s"blah")), 1802*88d15eacSSasha Smundak+ Proto: testprotos.Dirt(Inverse(λ, s"proto")), 1803*88d15eacSSasha Smundak wizard: map[string]*testprotos.Wizard{ 1804*88d15eacSSasha Smundak- "albus": s"dumbledore", 1805*88d15eacSSasha Smundak- "harry": s"potter", 1806*88d15eacSSasha Smundak+ "harry": s"otter", 1807*88d15eacSSasha Smundak }, 1808*88d15eacSSasha Smundak sadistic: nil, 1809*88d15eacSSasha Smundak lastTime: 54321, 1810*88d15eacSSasha Smundak ... // 1 ignored field 1811*88d15eacSSasha Smundak } 1812*88d15eacSSasha Smundak>>> TestDiff/Project3/Inequal 1813*88d15eacSSasha Smundak<<< TestDiff/Project4/Inequal 1814*88d15eacSSasha Smundak teststructs.Cartel{ 1815*88d15eacSSasha Smundak Headquarter: teststructs.Headquarter{ 1816*88d15eacSSasha Smundak id: 5, 1817*88d15eacSSasha Smundak location: "moon", 1818*88d15eacSSasha Smundak subDivisions: []string{ 1819*88d15eacSSasha Smundak- "alpha", 1820*88d15eacSSasha Smundak "bravo", 1821*88d15eacSSasha Smundak "charlie", 1822*88d15eacSSasha Smundak }, 1823*88d15eacSSasha Smundak incorporatedDate: s"0001-01-01 00:00:00 +0000 UTC", 1824*88d15eacSSasha Smundak metaData: s"metadata", 1825*88d15eacSSasha Smundak privateMessage: nil, 1826*88d15eacSSasha Smundak publicMessage: []uint8{ 1827*88d15eacSSasha Smundak 0x01, 1828*88d15eacSSasha Smundak 0x02, 1829*88d15eacSSasha Smundak- 0x03, 1830*88d15eacSSasha Smundak+ 0x04, 1831*88d15eacSSasha Smundak- 0x04, 1832*88d15eacSSasha Smundak+ 0x03, 1833*88d15eacSSasha Smundak 0x05, 1834*88d15eacSSasha Smundak }, 1835*88d15eacSSasha Smundak horseBack: "abcdef", 1836*88d15eacSSasha Smundak rattle: "", 1837*88d15eacSSasha Smundak ... // 5 identical fields 1838*88d15eacSSasha Smundak }, 1839*88d15eacSSasha Smundak source: "mars", 1840*88d15eacSSasha Smundak creationDate: s"0001-01-01 00:00:00 +0000 UTC", 1841*88d15eacSSasha Smundak boss: "al capone", 1842*88d15eacSSasha Smundak lastCrimeDate: s"0001-01-01 00:00:00 +0000 UTC", 1843*88d15eacSSasha Smundak poisons: []*teststructs.Poison{ 1844*88d15eacSSasha Smundak &{ 1845*88d15eacSSasha Smundak- poisonType: 1, 1846*88d15eacSSasha Smundak+ poisonType: 5, 1847*88d15eacSSasha Smundak expiration: s"2009-11-10 23:00:00 +0000 UTC", 1848*88d15eacSSasha Smundak manufacturer: "acme", 1849*88d15eacSSasha Smundak potency: 0, 1850*88d15eacSSasha Smundak }, 1851*88d15eacSSasha Smundak- &{poisonType: 2, manufacturer: "acme2"}, 1852*88d15eacSSasha Smundak }, 1853*88d15eacSSasha Smundak } 1854*88d15eacSSasha Smundak>>> TestDiff/Project4/Inequal 1855