summaryrefslogtreecommitdiff
path: root/integration-tests
diff options
context:
space:
mode:
authorMS <ms@taler.net>2020-09-08 18:46:05 +0200
committerMS <ms@taler.net>2020-09-08 18:46:05 +0200
commitf3a2bf68bef89428d7a3885531b1780d51f6a81b (patch)
treee68ecd3d77e71811baf5f969ac1a63cc3ca4a7b7 /integration-tests
parent0c3208483bf2d8984ef20f2fc416ef31865197a6 (diff)
downloadlibeufin-f3a2bf68bef89428d7a3885531b1780d51f6a81b.tar.gz
libeufin-f3a2bf68bef89428d7a3885531b1780d51f6a81b.tar.bz2
libeufin-f3a2bf68bef89428d7a3885531b1780d51f6a81b.zip
more types checked
Diffstat (limited to 'integration-tests')
-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),
)
)