From 96101238afb82d200cf9d5005ffc2fc0391f23e4 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Thu, 2 Feb 2023 20:20:58 +0100 Subject: harness,wallet-cli: notification-based testing with RPC wallet --- packages/taler-util/src/twrpc-impl.node.ts | 12 +++++++++--- packages/taler-util/src/twrpc.ts | 2 ++ 2 files changed, 11 insertions(+), 3 deletions(-) (limited to 'packages/taler-util/src') diff --git a/packages/taler-util/src/twrpc-impl.node.ts b/packages/taler-util/src/twrpc-impl.node.ts index 52ab65b73..b6333da51 100644 --- a/packages/taler-util/src/twrpc-impl.node.ts +++ b/packages/taler-util/src/twrpc-impl.node.ts @@ -54,6 +54,9 @@ export async function connectRpc(args: RpcConnectArgs): Promise { let sockFilename = args.socketFilename; return new Promise((resolve, reject) => { const client = net.createConnection(sockFilename); + client.on("error", (e) => { + reject(e); + }); client.on("connect", () => { let parsingBody: string | undefined = undefined; let bodyChunks: string[] = []; @@ -102,7 +105,8 @@ export async function connectRpc(args: RpcConnectArgs): Promise { try { reqJson = JSON.parse(req); } catch (e) { - logger.warn("JSON request was invalid"); + logger.warn("JSON message from server was invalid"); + logger.info(`message was: ${req}`); } if (reqJson !== undefined) { logger.info(`request: ${req}`); @@ -112,6 +116,7 @@ export async function connectRpc(args: RpcConnectArgs): Promise { client.end(); } bodyChunks = []; + parsingBody = undefined; } else { bodyChunks.push(lineStr); } @@ -187,7 +192,7 @@ export async function runRpcServer(args: RpcServerArgs): Promise { try { reqJson = JSON.parse(req); } catch (e) { - logger.warn("JSON request was invalid"); + logger.warn("JSON request from client was invalid"); } if (reqJson !== undefined) { logger.info(`request: ${req}`); @@ -197,6 +202,7 @@ export async function runRpcServer(args: RpcServerArgs): Promise { sock.end(); } bodyChunks = []; + parsingBody = undefined; } else { bodyChunks.push(lineStr); } @@ -217,6 +223,6 @@ export async function runRpcServer(args: RpcServerArgs): Promise { handlers.onDisconnect(); }); }); - server.listen("wallet-core.sock"); + server.listen(args.socketFilename); }); } diff --git a/packages/taler-util/src/twrpc.ts b/packages/taler-util/src/twrpc.ts index 368e04e27..d221630d0 100644 --- a/packages/taler-util/src/twrpc.ts +++ b/packages/taler-util/src/twrpc.ts @@ -14,6 +14,8 @@ GNU Taler; see the file COPYING. If not, see */ +import { CoreApiResponse } from "./wallet-types.js"; + /** * Implementation for the wallet-core IPC protocol. * -- cgit v1.2.3