From 9b8deee05d2598ecedce6b5ad5cda144f20ac255 Mon Sep 17 00:00:00 2001 From: manuel Date: Tue, 22 May 2012 00:51:59 +0200 Subject: totycro said: fix buffer::insert --- AufgabeFFP7.hs | 2 +- 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, "") -- insert character before cursor insert :: Char -> Buffer -> Buffer -insert c (cur, buf) = (min (length buf + 1) (max (cur - 1) 0), buf1 ++ [c] ++ buf2) +insert c (cur, buf) = (min (length buf + 1) (max (cur + 1) 1), buf1 ++ [c] ++ buf2) where (buf1, buf2) = splitAt cur buf 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 [ TestCase $ assertEqual "empty" (0, "") (empty), - TestCase $ assertEqual "insert1" (0, "a") + TestCase $ assertEqual "insert1" (1, "a") (insert 'a' empty), - TestCase $ assertEqual "insert2" (0, "ba") + TestCase $ assertEqual "insert2" (2, "ab") (insert 'b' (insert 'a' empty)), - TestCase $ assertEqual "insert3" (0, "ba") - (insert 'b' (insert 'a' empty)), - TestCase $ assertEqual "insert4" (0, "ba") + TestCase $ assertEqual "insert3" (1, "ba") (insert 'b' (-100, "a")), - TestCase $ assertEqual "insert5" (2, "ab") + TestCase $ assertEqual "insert4" (2, "ab") (insert 'b' (100, "a")), TestCase $ assertEqual "delete1" (0, "bc") -- cgit v1.2.3