Q.S.T.Reduce ⇒ Q.Reduce and make it use Definition directly
This commit is contained in:
parent
ae43c324c0
commit
7895fa37e5
8 changed files with 43 additions and 97 deletions
|
@ -8,35 +8,30 @@ import TAP
|
|||
|
||||
|
||||
testWhnf : Eq b => Show b => (a -> (Subset b _)) -> String -> a -> b -> Test
|
||||
testWhnf whnf label from to = test "\{label} (whnf)" $
|
||||
let result = fst (whnf from) in
|
||||
if result == to
|
||||
then Right ()
|
||||
else with Prelude.(::)
|
||||
Left [("expected", to), ("received", result)]
|
||||
testWhnf whnf label from to = test "\{label} (whnf)" $ do
|
||||
let result = fst (whnf from)
|
||||
unless (result == to) $
|
||||
Left [("exp", to), ("got", result)] {a = List (String, b)}
|
||||
|
||||
testNoStep : Eq a => Show a => (a -> (Subset a _)) -> String -> a -> Test
|
||||
testNoStep whnf label e = test "\{label} (no step)" $
|
||||
let result = fst (whnf e) in
|
||||
if result == e
|
||||
then Right ()
|
||||
else with Prelude.(::)
|
||||
Left [("reduced", result)]
|
||||
testNoStep whnf label e = test "\{label} (no step)" $ do
|
||||
let result = fst (whnf e)
|
||||
unless (result == e) $ Left [("reduced", result)] {a = List (String, a)}
|
||||
|
||||
|
||||
|
||||
parameters {default empty defs : Definitions Three} {default 0 d, n : Nat}
|
||||
testWhnfT : String -> Term Three d n -> Term Three d n -> Test
|
||||
testWhnfT = testWhnf (whnfD defs)
|
||||
testWhnfT = testWhnf (whnf defs)
|
||||
|
||||
testWhnfE : String -> Elim Three d n -> Elim Three d n -> Test
|
||||
testWhnfE = testWhnf (whnfD defs)
|
||||
testWhnfE = testWhnf (whnf defs)
|
||||
|
||||
testNoStepE : String -> Elim Three d n -> Test
|
||||
testNoStepE = testNoStep (whnfD defs)
|
||||
testNoStepE = testNoStep (whnf defs)
|
||||
|
||||
testNoStepT : String -> Term Three d n -> Test
|
||||
testNoStepT = testNoStep (whnfD defs)
|
||||
testNoStepT = testNoStep (whnf defs)
|
||||
|
||||
|
||||
tests = "whnf" :- [
|
||||
|
|
|
@ -50,8 +50,8 @@ PrettyHL q => ToInfo (Error q) where
|
|||
("left", prettyStr True p),
|
||||
("right", prettyStr True q)]
|
||||
toInfo (NotType ty) =
|
||||
[("type", "NotType"),
|
||||
("actual", prettyStr True ty)]
|
||||
[("type", "NotType"),
|
||||
("got", prettyStr True ty)]
|
||||
toInfo (WrongType ty s t) =
|
||||
[("type", "WrongType"),
|
||||
("ty", prettyStr True ty),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue