tests: Ledger -> easytest

This commit is contained in:
Simon Michael 2018-09-04 10:24:07 -07:00
parent d5c756e6c8
commit c5cd0dc648
2 changed files with 32 additions and 15 deletions

View File

@ -52,17 +52,14 @@ import Hledger.Utils.Test
tests_Hledger_Data = TestList
[
tests_Hledger_Data_Ledger
,tests_Hledger_Data_Posting
-- ,tests_Hledger_Data_RawOptions
-- ,tests_Hledger_Data_StringFormat
tests_Hledger_Data_Posting
,tests_Hledger_Data_Timeclock
,tests_Hledger_Data_Transaction
-- ,tests_Hledger_Data_Types
]
easytests_Data = tests "Data" [
easytests_AccountName
,easytests_Amount
,easytests_Journal
,easytests_Ledger
]

View File

@ -7,15 +7,31 @@ balances, and postings in each account.
-}
module Hledger.Data.Ledger
{-# LANGUAGE OverloadedStrings #-}
module Hledger.Data.Ledger (
nullledger
,ledgerFromJournal
,ledgerAccountNames
,ledgerAccount
,ledgerRootAccount
,ledgerTopAccounts
,ledgerLeafAccounts
,ledgerAccountsMatching
,ledgerPostings
,ledgerDateSpan
,ledgerCommodities
,easytests_Ledger
)
where
import qualified Data.Map as M
-- import Data.Text (Text)
import qualified Data.Text as T
import Safe (headDef)
import Text.Printf
import Hledger.Utils.Test
import Hledger.Utils.Test hiding (is)
import Hledger.Data.Types
import Hledger.Data.Account
import Hledger.Data.Journal
@ -89,13 +105,17 @@ ledgerDateSpan = postingsDateSpan . ledgerPostings
ledgerCommodities :: Ledger -> [CommoditySymbol]
ledgerCommodities = M.keys . jinferredcommodities . ljournal
-- tests
is :: (Eq a, Show a, HasCallStack) => a -> a -> Test ()
is = flip expectEq'
easytests_Ledger = tests "Ledger" [
tests "ledgerFromJournal" [
(length $ ledgerPostings $ ledgerFromJournal Any nulljournal) `is` 0
,(length $ ledgerPostings $ ledgerFromJournal Any samplejournal) `is` 13
,(length $ ledgerPostings $ ledgerFromJournal (Depth 2) samplejournal) `is` 7
]
tests_ledgerFromJournal = [
"ledgerFromJournal" ~: do
assertEqual "" (0) (length $ ledgerPostings $ ledgerFromJournal Any nulljournal)
assertEqual "" (13) (length $ ledgerPostings $ ledgerFromJournal Any samplejournal)
assertEqual "" (7) (length $ ledgerPostings $ ledgerFromJournal (Depth 2) samplejournal)
]
tests_Hledger_Data_Ledger = TestList $
tests_ledgerFromJournal