From dc87fec30c6243a9f607af294a05967b9196effb Mon Sep 17 00:00:00 2001 From: John Goerzen Date: Wed, 28 May 2008 05:06:37 -0500 Subject: [PATCH] Added new (passing) test to compute all changes --- testsrc/runtests.hs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/testsrc/runtests.hs b/testsrc/runtests.hs index 8720664..fae901c 100644 --- a/testsrc/runtests.hs +++ b/testsrc/runtests.hs @@ -71,12 +71,25 @@ prop_allChangesToMaster master child = in (expectedResMaster, []) @=? (sort resMaster, resChild) +prop_allChanges :: SyncCollection Int -> SyncCollection Int -> SyncCollection Int -> Result +prop_allChanges master child lastchild = + let (resMaster, resChild) = syncThem master child lastchild + expectedResMaster = sort $ + (map CopyItem . Map.keys . Map.difference child $ Map.union master lastchild) ++ + (map DeleteItem . Map.keys . Map.intersection master $ Map.difference lastchild child) + expectedResChild = sort $ + (map CopyItem . Map.keys . Map.difference master $ Map.union child lastchild) ++ + (map DeleteItem . Map.keys . Map.intersection child $ Map.difference lastchild master) + in (expectedResMaster, expectedResChild) @=? + (sort resMaster, sort resChild) + allt = [qctest "Empty" prop_empty, qctest "Del all from child" prop_delAllFromChild, qctest "Del all from master" prop_delAllFromMaster, qctest "Add from master" prop_addFromMaster, qctest "All changes to child" prop_allChangesToChild, - qctest "All changes to master" prop_allChangesToMaster + qctest "All changes to master" prop_allChangesToMaster, + qctest "All changes" prop_allChanges ] testh = HU.runTestTT $ HU.TestList allt -- 2.39.2