diff options
| author | manuel <manuel@mausz.at> | 2012-05-22 00:51:59 +0200 |
|---|---|---|
| committer | manuel <manuel@mausz.at> | 2012-05-22 00:51:59 +0200 |
| commit | 9b8deee05d2598ecedce6b5ad5cda144f20ac255 (patch) | |
| tree | 506dfc2e62aff4b5420315744e77bc33e4c5d282 | |
| parent | 85ac51660b298681ba3dcaee9def5f1e5f2c5284 (diff) | |
| download | ffp-9b8deee05d2598ecedce6b5ad5cda144f20ac255.tar.gz ffp-9b8deee05d2598ecedce6b5ad5cda144f20ac255.tar.bz2 ffp-9b8deee05d2598ecedce6b5ad5cda144f20ac255.zip | |
totycro said: fix buffer::insert
| -rw-r--r-- | AufgabeFFP7.hs | 2 | ||||
| -rwxr-xr-x | TestAufgabeFFP7.hs | 10 |
2 files changed, 5 insertions, 7 deletions
diff --git a/AufgabeFFP7.hs b/AufgabeFFP7.hs index 091cb49..4ac8ebd 100644 --- a/AufgabeFFP7.hs +++ b/AufgabeFFP7.hs | |||
| @@ -13,7 +13,7 @@ empty = (0, "") | |||
| 13 | 13 | ||
| 14 | -- insert character before cursor | 14 | -- insert character before cursor |
| 15 | insert :: Char -> Buffer -> Buffer | 15 | insert :: Char -> Buffer -> Buffer |
| 16 | insert c (cur, buf) = (min (length buf + 1) (max (cur - 1) 0), buf1 ++ [c] ++ buf2) | 16 | insert c (cur, buf) = (min (length buf + 1) (max (cur + 1) 1), buf1 ++ [c] ++ buf2) |
| 17 | where | 17 | where |
| 18 | (buf1, buf2) = splitAt cur buf | 18 | (buf1, buf2) = splitAt cur buf |
| 19 | 19 | ||
diff --git a/TestAufgabeFFP7.hs b/TestAufgabeFFP7.hs index 16952cb..1bbd10e 100755 --- a/TestAufgabeFFP7.hs +++ b/TestAufgabeFFP7.hs | |||
| @@ -13,15 +13,13 @@ cases1 = TestLabel "buffer" $ TestList [ | |||
| 13 | TestCase $ assertEqual "empty" (0, "") | 13 | TestCase $ assertEqual "empty" (0, "") |
| 14 | (empty), | 14 | (empty), |
| 15 | 15 | ||
| 16 | TestCase $ assertEqual "insert1" (0, "a") | 16 | TestCase $ assertEqual "insert1" (1, "a") |
| 17 | (insert 'a' empty), | 17 | (insert 'a' empty), |
| 18 | TestCase $ assertEqual "insert2" (0, "ba") | 18 | TestCase $ assertEqual "insert2" (2, "ab") |
| 19 | (insert 'b' (insert 'a' empty)), | 19 | (insert 'b' (insert 'a' empty)), |
| 20 | TestCase $ assertEqual "insert3" (0, "ba") | 20 | TestCase $ assertEqual "insert3" (1, "ba") |
| 21 | (insert 'b' (insert 'a' empty)), | ||
| 22 | TestCase $ assertEqual "insert4" (0, "ba") | ||
| 23 | (insert 'b' (-100, "a")), | 21 | (insert 'b' (-100, "a")), |
| 24 | TestCase $ assertEqual "insert5" (2, "ab") | 22 | TestCase $ assertEqual "insert4" (2, "ab") |
| 25 | (insert 'b' (100, "a")), | 23 | (insert 'b' (100, "a")), |
| 26 | 24 | ||
| 27 | TestCase $ assertEqual "delete1" (0, "bc") | 25 | TestCase $ assertEqual "delete1" (0, "bc") |
