Da Doctest's readme, si può usare doctest con QuickCheck, in questo modo:Come posso utilizzare l'input multi-linea con QuickCheck in doctest?
-- |
-- prop> sort xs == (sort . sort) (xs :: [Int])
Vorrei descrivere questa struttura utilizzando più righe, probabilmente come
-- |
-- prop> sort xs ==
-- (sort . sort) (xs :: [Int])
doctest stesso supporta input multi-line (ancora una volta da readme)
-- |
-- >>> :{
-- let
-- x = 1
-- y = 2
-- in x + y + multiline
-- :}
-- 6
e ho provato diverse sintassi simile mi è venuta, come
-- |
-- prop> :{ sort xs ==
-- (sort . sort) (xs :: [Int])
-- }:
senza alcun successo. (Nell'esempio sopra, il messaggio di errore è parse error on input '{'
.)
Come è possibile utilizzare l'input su più righe con Quickcheck in doctest?
Credo che proprio come ghci, la sintassi su più righe richiede che i simboli di apertura e chiusura si trovino sulla loro stessa linea. Il tuo esempio non funzionerà perché ': {' non è sulla sua stessa linea. – user2407038
@ user2407038 Credo che tu abbia ragione riguardo a quel caso. Non posso evitare l'errore di analisi e avere 'prop>' riconosce più righe come input. – Yosh