@@ -66,22 +66,25 @@ def test_path(s):
s = TESTS_DIR / s
return s
def Amount(number, currency='USD'):
return bc_amount.Amount(Decimal(number), currency)
def Cost(number, currency='USD', date=FY_MID_DATE, label=None):
return bc_data.Cost(Decimal(number), currency, date, label)
def Posting(account, number,
currency='USD', cost=None, price=None, flag=None,
**meta):
if not (number is None or isinstance(number, Decimal)):
number = Decimal(number)
if cost is not None:
cost = Cost(*cost)
if meta is None:
meta = None
return bc_data.Posting(
account,
bc_amount.Amount(number, currency),
Amount(number, currency),
cost,
price,
flag,
meta,
)