;lib: csv: rename error-prone default rules
This commit is contained in:
parent
a0deb88796
commit
46caa1d4ef
@ -365,7 +365,7 @@ type RecordMatcher = [RegexpPattern] -- match if any regexps match any of the
|
|||||||
type DateFormat = String
|
type DateFormat = String
|
||||||
type RegexpPattern = String
|
type RegexpPattern = String
|
||||||
|
|
||||||
rules = CsvRules {
|
defrules = CsvRules {
|
||||||
rdirectives=[],
|
rdirectives=[],
|
||||||
rcsvfieldindexes=[],
|
rcsvfieldindexes=[],
|
||||||
rassignments=[],
|
rassignments=[],
|
||||||
@ -441,7 +441,7 @@ parseAndValidateCsvRules rulesfile s = do
|
|||||||
parseCsvRules :: FilePath -> T.Text -> Either (ParseErrorBundle T.Text CustomErr) CsvRules
|
parseCsvRules :: FilePath -> T.Text -> Either (ParseErrorBundle T.Text CustomErr) CsvRules
|
||||||
-- parseCsvRules rulesfile s = runParser csvrulesfile nullrules{baseAccount=takeBaseName rulesfile} rulesfile s
|
-- parseCsvRules rulesfile s = runParser csvrulesfile nullrules{baseAccount=takeBaseName rulesfile} rulesfile s
|
||||||
parseCsvRules rulesfile s =
|
parseCsvRules rulesfile s =
|
||||||
runParser (evalStateT rulesp rules) rulesfile s
|
runParser (evalStateT rulesp defrules) rulesfile s
|
||||||
|
|
||||||
-- | Return the validated rules, or an error.
|
-- | Return the validated rules, or an error.
|
||||||
validateRules :: CsvRules -> ExceptT String IO CsvRules
|
validateRules :: CsvRules -> ExceptT String IO CsvRules
|
||||||
@ -893,21 +893,21 @@ parseDateWithFormatOrDefaultFormats mformat s = firstJust $ map parsewith format
|
|||||||
tests_CsvReader = tests "CsvReader" [
|
tests_CsvReader = tests "CsvReader" [
|
||||||
tests "parseCsvRules" [
|
tests "parseCsvRules" [
|
||||||
test "empty file" $
|
test "empty file" $
|
||||||
parseCsvRules "unknown" "" `is` Right rules
|
parseCsvRules "unknown" "" `is` Right defrules
|
||||||
]
|
]
|
||||||
,tests "rulesp" [
|
,tests "rulesp" [
|
||||||
test "trailing comments" $
|
test "trailing comments" $
|
||||||
parseWithState' rules rulesp "skip\n# \n#\n" `is` Right rules{rdirectives = [("skip","")]}
|
parseWithState' defrules rulesp "skip\n# \n#\n" `is` Right defrules{rdirectives = [("skip","")]}
|
||||||
|
|
||||||
,test "trailing blank lines" $
|
,test "trailing blank lines" $
|
||||||
parseWithState' rules rulesp "skip\n\n \n" `is` (Right rules{rdirectives = [("skip","")]})
|
parseWithState' defrules rulesp "skip\n\n \n" `is` (Right defrules{rdirectives = [("skip","")]})
|
||||||
|
|
||||||
,test "no final newline" $
|
,test "no final newline" $
|
||||||
parseWithState' rules rulesp "skip" `is` (Right rules{rdirectives=[("skip","")]})
|
parseWithState' defrules rulesp "skip" `is` (Right defrules{rdirectives=[("skip","")]})
|
||||||
|
|
||||||
,test "assignment with empty value" $
|
,test "assignment with empty value" $
|
||||||
parseWithState' rules rulesp "account1 \nif foo\n account2 foo\n" `is`
|
parseWithState' defrules rulesp "account1 \nif foo\n account2 foo\n" `is`
|
||||||
(Right rules{rassignments = [("account1","")], rconditionalblocks = [([["foo"]],[("account2","foo")])]})
|
(Right defrules{rassignments = [("account1","")], rconditionalblocks = [([["foo"]],[("account2","foo")])]})
|
||||||
|
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user