From 9b521c9b070ea52c87dc13269c08271663bf3dc3 Mon Sep 17 00:00:00 2001 From: Neil Brown Date: Wed, 27 Feb 2008 17:19:47 +0000 Subject: [PATCH] Added tests for testing that testTransformProtocolInput transformed protocol inputs in ALTs --- transformations/PassTest.hs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/transformations/PassTest.hs b/transformations/PassTest.hs index d4949f1..e370f36 100644 --- a/transformations/PassTest.hs +++ b/transformations/PassTest.hs @@ -526,6 +526,23 @@ testTransformProtocolInput = TestList (A.Seq emptyMeta $ A.Several emptyMeta $ map onlySingle [ii0, ii1, ii2]) (transformProtocolInput $ seqItems [ii0, ii1, ii2]) (return ()) + + ,TestCase $ testPass "testTransformProtocolInput2" + (A.Alt emptyMeta False $ onlySingleAlt ii0) + (transformProtocolInput $ A.Alt emptyMeta False $ onlySingleAlt ii0) + (return ()) + + ,TestCase $ testPass "testTransformProtocolInput3" + (A.Alt emptyMeta True $ A.Only emptyMeta $ A.Alternative emptyMeta (variable "c") (A.InputSimple emptyMeta [ii0]) $ + A.Seq emptyMeta $ A.Several emptyMeta $ onlySingle ii1 : [A.Only emptyMeta $ A.Skip emptyMeta]) + (transformProtocolInput $ A.Alt emptyMeta True $ A.Only emptyMeta $ altItems [ii0, ii1]) + (return ()) + + ,TestCase $ testPass "testTransformProtocolInput4" + (A.Alt emptyMeta False $ A.Only emptyMeta $ A.Alternative emptyMeta (variable "c") (A.InputSimple emptyMeta [ii0]) $ + A.Seq emptyMeta $ A.Several emptyMeta $ map onlySingle [ii1,ii2] ++ [A.Only emptyMeta $ A.Skip emptyMeta]) + (transformProtocolInput $ A.Alt emptyMeta False $ A.Only emptyMeta $ altItems [ii0, ii1, ii2]) + (return ()) ] where ii0 = A.InVariable emptyMeta (variable "x") @@ -533,7 +550,9 @@ testTransformProtocolInput = TestList ii2 = A.InVariable emptyMeta (variable "a") onlySingle = A.Only emptyMeta . A.Input emptyMeta (variable "c") . A.InputSimple emptyMeta . singleton + onlySingleAlt = A.Only emptyMeta . flip (A.Alternative emptyMeta (variable "c")) (A.Skip emptyMeta) . A.InputSimple emptyMeta . singleton seqItems = A.Input emptyMeta (variable "c") . A.InputSimple emptyMeta + altItems = flip (A.Alternative emptyMeta (variable "c")) (A.Skip emptyMeta) . A.InputSimple emptyMeta --Returns the list of tests: tests :: Test