func BenchmarkInts(b *testing.B) { t := tests[len(tests)-1] d1 := t.a d2 := t.b for i := 0; i < b.N; i++ { diff.Ints(d1, d2) } }
func TestDiffAB(t *testing.T) { for _, test := range tests { res := diff.Ints(test.a, test.b) if len(res) != len(test.res) { t.Error(test.name, "expected length", len(test.res), "for", res) continue } for i, c := range test.res { if c != res[i] { t.Error(test.name, "expected ", c, "got", res[i]) } } } }
func TestDiffBA(t *testing.T) { // interesting: fig.1 Diff(b, a) results in the same path as `diff -d a b` tests[len(tests)-1].res = []diff.Change{ {0, 0, 2, 0}, {3, 1, 1, 0}, {5, 2, 0, 1}, {7, 5, 0, 1}, } for _, test := range tests { res := diff.Ints(test.b, test.a) if len(res) != len(test.res) { t.Error(test.name, "expected length", len(test.res), "for", res) continue } for i, c := range test.res { // flip change data also rc := diff.Change{c.B, c.A, c.Ins, c.Del} if rc != res[i] { t.Error(test.name, "expected ", rc, "got", res[i]) } } } }