summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--integration-tests/json_checks.py29
-rwxr-xr-xintegration-tests/start-testenv.py11
2 files changed, 35 insertions, 5 deletions
diff --git a/integration-tests/json_checks.py b/integration-tests/json_checks.py
new file mode 100644
index 00000000..10a3d0b7
--- /dev/null
+++ b/integration-tests/json_checks.py
@@ -0,0 +1,29 @@
+#!/usr/bin/env python3
+
+# This minimal library checks only if the JSON values
+# contains the expected fields, without actually checking
+# if the fields' value match the API.
+
+from util import CheckJsonField as F, CheckJsonTop as T
+
+def checkNewUserRequest(json):
+ c = T(F("username"), F("password"))
+ return c.check(json)
+
+def checkNewEbicsConnection(json):
+ c = T(
+ F("source"),
+ F("name"),
+ F("type"),
+ F("data", T(
+ F("ebicsURL"),
+ F("hostID"),
+ F("partnerID"),
+ F("userID"),
+ ))
+ )
+ return c.check(json)
+
+def checkImportAccount(json):
+ c = T(F("nexusBankAccountId"), F("offeredAccountId"))
+ return c.check(json)
diff --git a/integration-tests/start-testenv.py b/integration-tests/start-testenv.py
index 1fde4ee2..634b93e6 100755
--- a/integration-tests/start-testenv.py
+++ b/integration-tests/start-testenv.py
@@ -7,6 +7,7 @@ import os
import socket
import hashlib
import base64
+from json_checks import checkNewUserRequest, checkNewEbicsConnection, checkImportAccount
from util import startNexus, startSandbox, assertResponse
# Nexus user details
@@ -258,7 +259,7 @@ assertResponse(
post(
"http://localhost:5001/users",
headers=dict(Authorization=ADMIN_AUTHORIZATION_HEADER),
- json=dict(username=USERNAME, password=PASSWORD),
+ json=checkNewUserRequest(dict(username=USERNAME, password=PASSWORD)),
)
)
@@ -268,14 +269,14 @@ print("creating bank connection")
assertResponse(
post(
"http://localhost:5001/bank-connections",
- json=dict(
+ json=checkNewEbicsConnection(dict(
name="my-ebics-1",
source="new",
type="ebics",
data=dict(
ebicsURL=EBICS_URL, hostID=BC1_HOST_ID, partnerID=BC1_PARTNER_ID, userID=BC1_USER_ID
),
- ),
+ )),
headers=dict(Authorization=USER_AUTHORIZATION_HEADER),
)
)
@@ -375,10 +376,10 @@ assertResponse(
assertResponse(
post(
"http://localhost:5001/bank-connections/my-ebics-1/import-account",
- json=dict(
+ json=checkImportAccount(dict(
offeredAccountId=BC1_SUBSCRIBER1_BANK_ACCOUNT_LABEL,
nexusBankAccountId=BC1_SUBSCRIBER1_BANK_ACCOUNT_LABEL
- ),
+ )),
headers=dict(Authorization=USER_AUTHORIZATION_HEADER),
)
)