summary history files

web/tests/test_common_util.py
import pytest
from penny.common import util
from penny import models
import datetime

@pytest.mark.parametrize("transaction, hash", [
    (
        models.Transaction(
            date=datetime.datetime.strptime('20200101', '%Y%m%d'),
            debit=-1600,
            credit=0,
            memo="stan.com.au Sydney AUS",
            bankaccount=models.BankAccount(id=1),
            fitid=None,
        ),
        "0928895e5604901c7e3ac6969d8bc66576c1479f7f5fdb38e5a401d33287e47a"
    ),
    (
        models.Transaction(
            date=datetime.datetime.strptime('20200101', '%Y%m%d'),
            debit=-1600,
            credit=0,
            memo="stan.com.au   Sydney AUS",
            bankaccount=models.BankAccount(id=1),
            fitid=None,
        ),
        "0928895e5604901c7e3ac6969d8bc66576c1479f7f5fdb38e5a401d33287e47a"
    ),
    (
        models.Transaction(
            date=datetime.datetime.strptime('20200101', '%Y%m%d'),
            debit=-1600,
            credit=0,
            memo="stan.com.au   Sydney AUS       ",
            bankaccount=models.BankAccount(id=1),
            fitid=None,
        ),
        "0928895e5604901c7e3ac6969d8bc66576c1479f7f5fdb38e5a401d33287e47a"
    ),
])
def test_generate_transaction_hash(transaction: models.Transaction, hash: str) -> None:
    assert util.generate_transaction_hash(transaction) == hash

def test_merge_dicts() -> None:
    assert util.merge_dicts({'a': 'b'}, {'c': 'd'}) == {'a': 'b', 'c': 'd'}