1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
module Main where
import Test.HUnit
import Control.Monad
import AufgabeFFP6
import Data.Array
cases1 = TestLabel "eval" $ TestList [
TestCase $ assertEqual "eval1" (0)
(eval (array (1,3) [(1,1), (2,2), (3,3)]) (array (1,2) [(1,(+)), (2,(-))])),
TestCase $ assertEqual "eval2" (5)
(eval (array (1,3) [(1,1), (2,2), (3,3)]) (array (1,2) [(1,(*)), (2,(+))])),
TestCase $ assertEqual "eval3" (-3)
(eval (array (1,3) [(1,1), (2,2), (3,3)]) (array (1,2) [(1,(-)), (2,(*))])),
TestCase $ assertEqual "eval4" (-1)
(eval (array (1,6) [(1,3), (2,5), (3,2), (4,-2), (5,7), (6,0)]) (array (1,5) [(1,(+)), (2,(./.)), (3,(*)), (4,(+)), (5,(-))])),
TestCase $ assertEqual "eval5" (1)
(eval (array (1,6) [(1,3), (2,5), (3,2), (4,-2), (5,7), (6,0)]) (array (1,5) [(1,(*)), (2,(-)), (3,(+)), (4,(./.)), (5,(+))])),
TestCase $ assertEqual "eval6" (-5)
(eval (array (1,6) [(1,4), (2,2), (3,3), (4,-4), (5,5), (6,2)]) (array (1,5) [(1,(+)), (2,(./.)), (3,(*)), (4,(+)), (5,(-))])),
TestCase $ assertEqual "eval7" (2)
(eval (array (1,6) [(1,4), (2,2), (3,3), (4,-4), (5,5), (6,2)]) (array (1,5) [(1,(*)), (2,(-)), (3,(+)), (4,(./.)), (5,(+))]))
]
tests :: [Test]
tests = [cases1]
main = do
forM tests $ \test ->
runTestTT test
|