queryFromOptsOnly for when args aren't query terms
This commit is contained in:
parent
204af487a5
commit
73c09f91d7
@ -22,6 +22,7 @@ module Hledger.Reports (
|
|||||||
whichDateFromOpts,
|
whichDateFromOpts,
|
||||||
journalSelectingAmountFromOpts,
|
journalSelectingAmountFromOpts,
|
||||||
queryFromOpts,
|
queryFromOpts,
|
||||||
|
queryFromOptsOnly,
|
||||||
queryOptsFromOpts,
|
queryOptsFromOpts,
|
||||||
reportSpans,
|
reportSpans,
|
||||||
-- * Entries report
|
-- * Entries report
|
||||||
@ -223,6 +224,17 @@ queryFromOpts d opts@ReportOpts{..} = simplifyQuery $ And $ [flagsq, argsq]
|
|||||||
++ (maybe [] ((:[]) . Depth) depth_)
|
++ (maybe [] ((:[]) . Depth) depth_)
|
||||||
argsq = fst $ parseQuery d query_
|
argsq = fst $ parseQuery d query_
|
||||||
|
|
||||||
|
-- | Convert report options to a query, ignoring any non-flag command line arguments.
|
||||||
|
queryFromOptsOnly :: Day -> ReportOpts -> Query
|
||||||
|
queryFromOptsOnly d opts@ReportOpts{..} = simplifyQuery flagsq
|
||||||
|
where
|
||||||
|
flagsq = And $
|
||||||
|
[(if date2_ then Date2 else Date) $ dateSpanFromOpts d opts]
|
||||||
|
++ (if real_ then [Real True] else [])
|
||||||
|
++ (if empty_ then [Empty True] else []) -- ?
|
||||||
|
++ (maybe [] ((:[]) . Status) (clearedValueFromOpts opts))
|
||||||
|
++ (maybe [] ((:[]) . Depth) depth_)
|
||||||
|
|
||||||
tests_queryFromOpts = [
|
tests_queryFromOpts = [
|
||||||
"queryFromOpts" ~: do
|
"queryFromOpts" ~: do
|
||||||
assertEqual "" Any (queryFromOpts nulldate defreportopts)
|
assertEqual "" Any (queryFromOpts nulldate defreportopts)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user