From 3023874e36914fbc89c3090b3a95221e78e82225 Mon Sep 17 00:00:00 2001 From: Anders Betts Date: Sun, 20 Sep 2026 13:01:04 +0200 Subject: tests: bank reconciliation pty scenario --- scripts/tui-golden.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'scripts/tui-golden.py') diff --git a/scripts/tui-golden.py b/scripts/tui-golden.py index 33f1d7c..e67f0d7 100755 --- a/scripts/tui-golden.py +++ b/scripts/tui-golden.py @@ -18,6 +18,7 @@ # and colour/attributes are ignored. That is enough for stable text asserts, # not for pixel-exact comparison. +import base64 import difflib import fcntl import json @@ -114,6 +115,22 @@ SCENARIOS = [ }, ], }, + { + "name": "bank", + "screen": "bank", + "expect": ["Bankavstämning", "GOLDEN INSÄTTNING", "CDON", + "förslag", "123,00"], + "steps": [ + { + "keys": ["enter", "enter"], + "expect": ["Matchat."], + }, + { + "keys": ["enter"], + "expect": ["→ A1", "1 omatchade"], + }, + ], + }, ] # -------------------------------------------------------------------------- @@ -600,6 +617,23 @@ def setup_rig(repo, tmp, env): json.dumps({"filename": "kvitto.txt", "content_base64": "a3ZpdHRv", "voucher_id": vid})], env) + from datetime import date, timedelta + start = date.fromisoformat(fy.get("start_date", "2026-01-01")) + golden_date = (start + timedelta(days=1)).isoformat() + csv = ( + "Bokförd;Valutadatum;Text;Typ;Insättningar;Uttag;Bokfört saldo\n" + f"{golden_date};{golden_date};GOLDEN INSÄTTNING;Insättning;" + "123,00;;1000,00\n" + f"{start.isoformat()};{start.isoformat()};CDON /26-09-17;" + "Kortköp;;24,09;975,91\n" + ) + run_checked([str(bind / "bokfctl"), "--socket", str(sock), + "--user", "admin", "--password", env["BOKFD_PASSWORD"], + "--org", str(org_id), "bank.import", + json.dumps({"format": "seb", + "account": "1930", + "content_base64": base64.b64encode( + csv.encode("utf-8")).decode()})], env) return daemon, sock, org_id, fy -- cgit v1.3