Added a couple of tests for sequential replicators

This commit is contained in:
Neil Brown 2008-01-30 13:50:28 +00:00
parent b6132d6431
commit 7c811f347c

View File

@ -76,6 +76,7 @@ sm7 = A.Skip m7
sm8 = A.Skip m8
sm9 = A.Skip m9
sm10 = A.Skip m10
sm11 = A.Skip m11
-- | Shows a graph as a node and edge list.
showGraph :: (Graph g, Show a, Show b) => g a b -> String
@ -174,6 +175,17 @@ testSeq = TestLabel "testSeq" $ TestList
[(1,m1),(3,m4),(5,m5),(7,m7),(9,m10),(101,sub m1 100),(105,sub m5 100),(107,sub m7 100)] [1]
[(1,3,ESeq),(3,101,ESeq),(101,5,ESeq),(5,7,ESeq),(7,9,ESeq),(9,107,ESeq),(107,105,ESeq)]
(A.Several m11 [A.Spec mU (someSpec m1) $ A.OnlyP m3 sm4,A.Spec mU (someSpec m5) $ A.Spec mU (someSpec m7) $ A.OnlyP m9 sm10])
-- Replicated SEQ:
,testSeq' 100 [(0,m0), (1,m3), (2,m5)] [(0,1,ESeq), (1,2,ESeq), (2,0,ESeq)]
(A.Rep m0 (A.For mU undefined undefined undefined) $ A.Several m1 [A.OnlyP m2 sm3,A.OnlyP m4 sm5])
,testSeq'' 101 [(0,m0), (1,m3), (2,m5),(3,m9),(4,m11)] [9] [(3,0,ESeq),(0,1,ESeq), (1,2,ESeq), (2,0,ESeq),(0,4,ESeq)]
(A.OnlyP mU $ A.Seq m6 $ A.Several m7
[A.OnlyP m8 sm9
,(A.Rep m0 (A.For mU undefined undefined undefined) $ A.Several m1 [A.OnlyP m2 sm3,A.OnlyP m4 sm5])
,A.OnlyP m10 sm11])
]
where
testSeq' :: Int -> [(Int, Meta)] -> [(Int, Int, EdgeLabel)] -> A.Structured -> Test