Skip to content

Commit 443d32d

Browse files
committed
remove txParams
1 parent c2c5e99 commit 443d32d

File tree

3 files changed

+24
-22
lines changed

3 files changed

+24
-22
lines changed

src/iden3comm/handlers/payment.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -110,8 +110,7 @@ export interface IPaymentHandler {
110110

111111
/** @beta PaymentRequestMessageHandlerOptions represents payment-request handler options */
112112
export type PaymentRequestMessageHandlerOptions = {
113-
txParams: unknown[];
114-
paymentHandler: (data: PaymentRequestDataInfo, txParams: unknown[]) => Promise<string>;
113+
paymentHandler: (data: PaymentRequestDataInfo) => Promise<string>;
115114
};
116115

117116
/** @beta PaymentHandlerOptions represents payment handler options */
@@ -210,7 +209,7 @@ export class PaymentHandler
210209
throw new Error(`failed request. not supported '${paymentReq.data.type}' payment type `);
211210
}
212211

213-
const txID = await ctx.paymentHandler(paymentReq.data, ctx.txParams);
212+
const txID = await ctx.paymentHandler(paymentReq.data);
214213

215214
payments.push({
216215
id: paymentReq.data.id,

src/iden3comm/types/protocol/payment.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export type PaymentRequestDataInfo = {
2929
type: PaymentRequestDataType;
3030
amount: string;
3131
id: number;
32-
chainID: number;
32+
chainId: number;
3333
address: string;
3434
signature?: string;
3535
};

tests/handlers/payment.test.ts

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ import {
4646
} from '../../src/iden3comm/types/protocol/payment';
4747
import { Contract, ethers, JsonRpcProvider } from 'ethers';
4848
import fetchMock from '@gr2m/fetch-mock';
49+
import { fail } from 'assert';
4950

5051
describe('payment-request handler', () => {
5152
let packageMgr: IPackageManager;
@@ -95,17 +96,16 @@ describe('payment-request handler', () => {
9596
}
9697
];
9798

98-
const paymentIntegrationHandlerFunc = async (
99-
data: PaymentRequestDataInfo,
100-
txParams: unknown[]
101-
): Promise<string> => {
102-
const rpcProvider = new JsonRpcProvider(RPC_URL);
103-
const ethSigner = new ethers.Wallet(WALLET_KEY, rpcProvider);
104-
const payContract = new Contract(data.address, payContractAbi, ethSigner);
105-
const options = { value: data.amount };
106-
const txData = await payContract.pay(...txParams, options);
107-
return txData.hash;
108-
};
99+
const paymentIntegrationHandlerFunc =
100+
(sessionId: string, did: string) =>
101+
async (data: PaymentRequestDataInfo): Promise<string> => {
102+
const rpcProvider = new JsonRpcProvider(RPC_URL);
103+
const ethSigner = new ethers.Wallet(WALLET_KEY, rpcProvider);
104+
const payContract = new Contract(data.address, payContractAbi, ethSigner);
105+
const options = { value: data.amount };
106+
const txData = await payContract.pay(sessionId, did, options);
107+
return txData.hash;
108+
};
109109

110110
const paymentCheckIntegrationHandlerFunc = async (
111111
txId: string,
@@ -130,7 +130,7 @@ describe('payment-request handler', () => {
130130
type: PaymentRequestDataType.Iden3PaymentRequestCryptoV1,
131131
amount: '1000000000000000',
132132
id: 12432,
133-
chainID: 80002,
133+
chainId: 80002,
134134
address: '0x2C2007d72f533FfD409F0D9f515983e95bF14992'
135135
},
136136
expiration: 2125558127,
@@ -196,9 +196,11 @@ describe('payment-request handler', () => {
196196
{}
197197
);
198198
const agentMessageBytes = await paymentHandler.handlePaymentRequest(msgBytesRequest, {
199-
paymentHandler: paymentHandlerFuncMock,
200-
txParams: ['<session-id-hash>', '<issuer-did-hash>']
199+
paymentHandler: paymentHandlerFuncMock
201200
});
201+
if (!agentMessageBytes) {
202+
fail('handlePaymentRequest is not expected null response');
203+
}
202204
const { unpackedMessage: agentMessage } = await packageManager.unpack(agentMessageBytes);
203205

204206
expect((agentMessage as BasicMessage).type).to.be.eq(
@@ -216,8 +218,7 @@ describe('payment-request handler', () => {
216218
{}
217219
);
218220
const agentMessageBytes = await paymentHandler.handlePaymentRequest(msgBytesRequest, {
219-
paymentHandler: paymentHandlerFuncMock,
220-
txParams: ['<session-id-hash>', '<issuer-did-hash>']
221+
paymentHandler: paymentHandlerFuncMock
221222
});
222223
expect(agentMessageBytes).to.be.null;
223224
});
@@ -250,9 +251,11 @@ describe('payment-request handler', () => {
250251
{}
251252
);
252253
const agentMessageBytes = await paymentHandler.handlePaymentRequest(msgBytesRequest, {
253-
paymentHandler: paymentIntegrationHandlerFunc,
254-
txParams: ['<session-id-hash>', '<issuer-did-hash>']
254+
paymentHandler: paymentIntegrationHandlerFunc('<session-id-hash>', '<issuer-did-hash>')
255255
});
256+
if (!agentMessageBytes) {
257+
fail('handlePaymentRequest is not expected null response');
258+
}
256259
const { unpackedMessage: agentMessage } = await packageManager.unpack(agentMessageBytes);
257260

258261
expect((agentMessage as BasicMessage).type).to.be.eq(

0 commit comments

Comments
 (0)