"""test_reports_balance_sheet.py - Unit tests for balance sheet report""" # Copyright © 2020 Brett Smith # License: AGPLv3-or-later WITH Beancount-Plugin-Additional-Permission-1.0 # # Full copyright and licensing details can be found at toplevel file # LICENSE.txt in the repository. import datetime import io import itertools import pytest from . import testutil import odf.opendocument from conservancy_beancount.reports import balance_sheet clean_account_meta = pytest.fixture(scope='module')(testutil.clean_account_meta) def run_main(arglist=[], config=None): if config is None: config = testutil.TestConfig(books_path=testutil.test_path('books/fund.beancount')) stdout = io.BytesIO() stderr = io.StringIO() retcode = balance_sheet.main(['-O', '-'] + arglist, stdout, stderr, config) stdout.seek(0) stderr.seek(0) return retcode, stdout, stderr def test_main(): retcode, stdout, stderr = run_main() assert retcode == 0 assert not stderr.getvalue() report = odf.opendocument.load(stdout) assert report.spreadsheet.childNodes