@@ -39,15 +39,11 @@ nested = fix \p -> (do
39
39
parseTest :: forall s a eff . (Show a , Eq a ) => s -> a -> Parser s a -> Eff (console :: CONSOLE , assert :: ASSERT | eff ) Unit
40
40
parseTest input expected p = case runParser input p of
41
41
Right actual -> assert (expected == actual)
42
- Left err -> do
43
- print $ " error: " ++ show err
44
- assert false
42
+ Left err -> assert' (" error: " ++ show err) false
45
43
46
44
parseErrorTestPosition :: forall s a eff . (Show a ) => Parser s a -> s -> Position -> Eff (console :: CONSOLE , assert :: ASSERT | eff ) Unit
47
45
parseErrorTestPosition p input expected = case runParser input p of
48
- Right _ -> do
49
- print " error: ParseError expected!"
50
- assert false
46
+ Right _ -> assert' " error: ParseError expected!" false
51
47
Left (ParseError { position: pos }) -> assert (expected == pos)
52
48
53
49
opTest :: Parser String String
@@ -95,14 +91,15 @@ isA _ = false
95
91
96
92
main = do
97
93
98
- parseTest " " Nil $ many $ char ' \n ' *> char ' \n '
99
- parseTest " " Nil $ many $ string " \n\n "
94
+ parseErrorTestPosition
95
+ (many $ char ' f' *> char ' ?' )
96
+ " foo"
97
+ (Position { column: 3 , line: 1 })
100
98
101
- parseTest " \n " (Cons ' \n ' Nil ) $ many $ char ' \n '
102
- parseTest " \n " (Cons " \n " Nil ) $ many $ string " \n "
103
-
104
- parseTest " \n " Nil $ many $ string " \n\n "
105
- parseTest " \n " Nil $ many $ char ' \n ' *> char ' \n '
99
+ parseTest
100
+ " foo"
101
+ Nil
102
+ (many $ try $ char ' f' *> char ' ?' )
106
103
107
104
parseTest " (((a)))" 3 nested
108
105
parseTest " aaa" (Cons " a" (Cons " a" (Cons " a" Nil ))) $ many (string " a" )
0 commit comments