@@ -24,7 +24,7 @@ import Data.String.CodeUnits as SCU
24
24
import Data.String.Regex.Flags (RegexFlags , ignoreCase , noFlags )
25
25
import Data.Tuple (Tuple (..))
26
26
import Effect (Effect )
27
- import Effect.Console (logShow )
27
+ import Effect.Console (log , logShow )
28
28
import Partial.Unsafe (unsafePartial )
29
29
import Test.Assert (assert' )
30
30
import Text.Parsing.Parser (ParseError (..), Parser , ParserT , fail , parseErrorMessage , parseErrorPosition , position , region , runParser )
@@ -574,6 +574,7 @@ javaStyleTest = do
574
574
main :: Effect Unit
575
575
main = do
576
576
577
+ log " \n TESTS String\n "
577
578
parseErrorTestPosition
578
579
(many $ char ' f' *> char ' ?' )
579
580
" foo"
@@ -682,6 +683,8 @@ main = do
682
683
parseErrorTestPosition (string " a\n b\n c\n " *> eof) " a\n b\n c\n d\n " (Position { column: 1 , line: 4 })
683
684
parseErrorTestPosition (string " \t a" *> eof) " \t ab" (Position { column: 10 , line: 1 })
684
685
686
+ log " \n TESTS number\n "
687
+
685
688
parseTest " Infinity" infinity number
686
689
parseTest " +Infinity" infinity number
687
690
parseTest " -Infinity" (negate infinity) number
@@ -696,6 +699,7 @@ main = do
696
699
parseTest " -6.0" (-6.0 ) number
697
700
parseTest " +6.0" (6.0 ) number
698
701
702
+ log " \n TESTS Operator\n "
699
703
-- test from issue #161
700
704
-- all the below operators should play well together
701
705
parseErrorTestMessage
@@ -762,18 +766,23 @@ main = do
762
766
-- TODO This shows the current limitations of the number parser. Ideally this parse should fail.
763
767
parseTest " 1..3" 1.0 $ number <* eof
764
768
769
+ log " \n TESTS intDecimal\n "
765
770
parseTest " -300" (-300 ) intDecimal
766
771
767
- mkRegexTest " regex-" " regex" " regex" noFlags (\p -> p <* char ' -' <* eof)
768
- mkRegexTest " -regex" " regex" " regex" noFlags (\p -> char ' -' *> p <* eof)
772
+ log " \n TESTS Regex\n "
773
+ mkRegexTest " regex-" " regex" " regex" noFlags (\regex -> regex <* char ' -' <* eof)
774
+ mkRegexTest " -regex" " regex" " regex" noFlags (\regex -> char ' -' *> regex <* eof)
769
775
mkRegexTest " regexregex" " regexregex" " (regex)*" noFlags identity
770
776
mkRegexTest " regexregex" " regex" " (^regex)*" noFlags identity
771
777
mkRegexTest " ReGeX" " ReGeX" " regex" ignoreCase identity
772
778
mkRegexTest " regexcapregexcap" " regexcap" " (?<CaptureGroupName>regexcap)" noFlags identity
773
779
mkRegexTest " regexcapregexcap" " regexcap" " (((?<CaptureGroupName>(r)e(g)excap)))" noFlags identity
774
780
781
+ log " \n TESTS Stack Safe Loops\n "
775
782
stackSafeLoopsTest
776
783
784
+ log " \n TESTS Token Parser\n "
785
+
777
786
tokenParserIdentifierTest
778
787
tokenParserReservedTest
779
788
tokenParserOperatorTest
@@ -806,18 +815,24 @@ main = do
806
815
tokenParserCommaSepTest
807
816
tokenParserCommaSep1Test
808
817
818
+ log " \n TESTS Haskell Style\n "
809
819
haskellStyleTest
820
+ log " \n TESTS Java Style\n "
810
821
javaStyleTest
811
822
812
- case runParser " aa" p of
813
- Right _ -> assert' " error: ParseError expected!" false
814
- Left (ParseError message _) -> do
815
- let messageExpected = " context1 context2 Expected \" b\" "
816
- assert' (" expected message: " <> messageExpected <> " , message: " <> message) (message == messageExpected)
817
- logShow messageExpected
818
- where
819
- prependContext m' (ParseError m pos) = ParseError (m' <> m) pos
820
- p = region (prependContext " context1 " ) $ do
821
- _ <- string " a"
822
- region (prependContext " context2 " ) $ do
823
- string " b"
823
+ log " \n TESTS region\n "
824
+ (
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