feat: documentation
This commit is contained in:
parent
d012307d19
commit
f05da30c8a
1 changed files with 5 additions and 2 deletions
|
@ -12,12 +12,15 @@ import qualified Language.Brainfuck as Brainfuck
|
|||
import qualified Arbitrary.ValidBrainfuckText as ValidBrainfuckText
|
||||
import qualified Arbitrary.InvalidBrainfuckText as InValidBrainfuckText
|
||||
|
||||
prop_acceptValidTexts :: ValidBrainfuckText.ValidBrainfuckText -> Bool
|
||||
prop_acceptValidTexts = Either.isRight . Brainfuck.parse . ValidBrainfuckText.get
|
||||
-- | ValidBrainfuckText will produce a text with comments, it must be parsed correctly
|
||||
prop_acceptValidTexts :: ValidBrainfuckText.ValidBrainfuckText -> Bool
|
||||
prop_acceptValidTexts = Either.isRight . Brainfuck.parse . ValidBrainfuckText.get
|
||||
|
||||
-- | InvalidBrainfuckText will insert unbalanced brackets, they must be rejected
|
||||
prop_rejectInvalidTexts :: InValidBrainfuckText.InvalidBrainfuckText -> Bool
|
||||
prop_rejectInvalidTexts = Either.isLeft . Brainfuck.parse . InValidBrainfuckText.get
|
||||
|
||||
-- | Does rendering and parsing a vector of instructions yield the exact same result?
|
||||
prop_renderParseInverse :: Vector Instruction -> Bool
|
||||
prop_renderParseInverse source = Right source == (Brainfuck.parse . Brainfuck.render $ source)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue