@@ -24,7 +24,7 @@ import Data.String.CodeUnits as SCU
2424import Data.String.Regex.Flags (RegexFlags , ignoreCase , noFlags )
2525import Data.Tuple (Tuple (..))
2626import Effect (Effect )
27- import Effect.Console (logShow )
27+ import Effect.Console (log , logShow )
2828import Partial.Unsafe (unsafePartial )
2929import Test.Assert (assert' )
3030import Parsing (ParseError (..), Parser , ParserT , fail , parseErrorMessage , parseErrorPosition , position , region , runParser )
@@ -106,7 +106,6 @@ mkRegexTest input expected pattern flags pars =
106106 Left err -> assert' (" error: " <> show err) false
107107 Right p -> parseTest input expected $ pars p
108108
109-
110109-- TODO everything is stack-safe now.
111110--
112111-- This test doesn't test the actual stack safety of these combinators, mainly
@@ -574,6 +573,7 @@ javaStyleTest = do
574573main :: Effect Unit
575574main = do
576575
576+ log " \n TESTS String\n "
577577 parseErrorTestPosition
578578 (many $ char ' f' *> char ' ?' )
579579 " foo"
@@ -682,6 +682,8 @@ main = do
682682 parseErrorTestPosition (string " a\n b\n c\n " *> eof) " a\n b\n c\n d\n " (Position { column: 1 , line: 4 })
683683 parseErrorTestPosition (string " \t a" *> eof) " \t ab" (Position { column: 10 , line: 1 })
684684
685+ log " \n TESTS number\n "
686+
685687 parseTest " Infinity" infinity number
686688 parseTest " +Infinity" infinity number
687689 parseTest " -Infinity" (negate infinity) number
@@ -696,6 +698,7 @@ main = do
696698 parseTest " -6.0" (-6.0 ) number
697699 parseTest " +6.0" (6.0 ) number
698700
701+ log " \n TESTS Operator\n "
699702 -- test from issue #161
700703 -- all the below operators should play well together
701704 parseErrorTestMessage
@@ -764,18 +767,23 @@ main = do
764767 -- TODO This shows the current limitations of the number parser. Ideally this parse should fail.
765768 parseTest " 1..3" 1.0 $ number <* eof
766769
770+ log " \n TESTS intDecimal\n "
767771 parseTest " -300" (-300 ) intDecimal
768772
769- mkRegexTest " regex-" " regex" " regex" noFlags (\p -> p <* char ' -' <* eof)
770- mkRegexTest " -regex" " regex" " regex" noFlags (\p -> char ' -' *> p <* eof)
773+ log " \n TESTS Regex\n "
774+ mkRegexTest " regex-" " regex" " regex" noFlags (\regex -> regex <* char ' -' <* eof)
775+ mkRegexTest " -regex" " regex" " regex" noFlags (\regex -> char ' -' *> regex <* eof)
771776 mkRegexTest " regexregex" " regexregex" " (regex)*" noFlags identity
772777 mkRegexTest " regexregex" " regex" " (^regex)*" noFlags identity
773778 mkRegexTest " ReGeX" " ReGeX" " regex" ignoreCase identity
774779 mkRegexTest " regexcapregexcap" " regexcap" " (?<CaptureGroupName>regexcap)" noFlags identity
775780 mkRegexTest " regexcapregexcap" " regexcap" " (((?<CaptureGroupName>(r)e(g)excap)))" noFlags identity
776781
782+ log " \n TESTS Stack Safe Loops\n "
777783 stackSafeLoopsTest
778784
785+ log " \n TESTS Token Parser\n "
786+
779787 tokenParserIdentifierTest
780788 tokenParserReservedTest
781789 tokenParserOperatorTest
@@ -808,18 +816,23 @@ main = do
808816 tokenParserCommaSepTest
809817 tokenParserCommaSep1Test
810818
819+ log " \n TESTS Haskell Style\n "
811820 haskellStyleTest
821+ log " \n TESTS Java Style\n "
812822 javaStyleTest
813823
814- case runParser " aa" p of
815- Right _ -> assert' " error: ParseError expected!" false
816- Left (ParseError message _) -> do
817- let messageExpected = " context1 context2 Expected \" b\" "
818- assert' (" expected message: " <> messageExpected <> " , message: " <> message) (message == messageExpected)
819- logShow messageExpected
820- where
821- prependContext m' (ParseError m pos) = ParseError (m' <> m) pos
822- p = region (prependContext " context1 " ) $ do
823- _ <- string " a"
824- region (prependContext " context2 " ) $ do
825- string " b"
824+ log " \n TESTS region\n "
825+ ( let
826+ prependContext m' (ParseError m pos) = ParseError (m' <> m) pos
827+ p = region (prependContext " context1 " ) $ do
828+ _ <- string " a"
829+ region (prependContext " context2 " ) $ do
830+ string " b"
831+ in
832+ case runParser " aa" p of
833+ Right _ -> assert' " error: ParseError expected!" false
834+ Left (ParseError message _) -> do
835+ let messageExpected = " context1 context2 Expected \" b\" "
836+ assert' (" expected message: " <> messageExpected <> " , message: " <> message) (message == messageExpected)
837+ logShow messageExpected
838+ )
0 commit comments