Fix left-most diff cases.
[lightning.git] / hgvs / diff_test.go
index 10acdb772c64c65fad369e8abad0a33a3afc15cf..2778dc8f553e2ce5f4964f9b0d0fb59c2efed1ab 100644 (file)
@@ -154,6 +154,12 @@ func (s *diffSuite) TestDiff(c *check.C) {
                        b:      "acgacatttacac",
                        expect: []string{"7_8del"},
                },
+               {
+                       // should delete leftmost
+                       a:      "acgacATatatacac",
+                       b:      "acgacatatacac",
+                       expect: []string{"6_7del"},
+               },
                {
                        // should insert leftmost
                        a:      "acgacatttacac",
@@ -161,14 +167,30 @@ func (s *diffSuite) TestDiff(c *check.C) {
                        expect: []string{"6_7insTT"},
                },
                {
-                       a:      "ccccaGATAtat",
-                       b:      "ccccatat",
+                       // should insert leftmost
+                       a:      "acgacatatacac",
+                       b:      "acgacATatatacac",
+                       expect: []string{"5_6insAT"},
+               },
+               {
+                       a:      "cccacGATAtatcc",
+                       b:      "cccactatcc",
                        expect: []string{"6_9del"},
                },
                {
-                       a:      "aGATAtat",
-                       b:      "atat",
-                       expect: []string{"2_5del"},
+                       a:      "acGATAtatcc",
+                       b:      "actatcc",
+                       expect: []string{"3_6del"},
+               },
+               {
+                       a:      "acTTTTTatcc",
+                       b:      "acGTTTatcc",
+                       expect: []string{"3_4delinsG"},
+               },
+               {
+                       a:      "acTTTTatcc",
+                       b:      "acGTTTTTatcc",
+                       expect: []string{"2_3insGT"},
                },
        } {
                c.Log(trial)