Skip to content
This repository was archived by the owner on Jan 22, 2025. It is now read-only.

Commit ae708ce

Browse files
authoredSep 1, 2022
fix: add compute units to jsonrpc parser (#27554)
1 parent e71d0b4 commit ae708ce

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed
 

‎src/connection.ts

+6
Original file line numberDiff line numberDiff line change
@@ -888,6 +888,8 @@ export type ParsedTransactionMeta = {
888888
err: TransactionError | null;
889889
/** The collection of addresses loaded using address lookup tables */
890890
loadedAddresses?: LoadedAddresses;
891+
/** The compute units consumed after processing the transaction */
892+
computeUnitsConsumed?: number;
891893
};
892894

893895
export type CompiledInnerInstruction = {
@@ -917,6 +919,8 @@ export type ConfirmedTransactionMeta = {
917919
err: TransactionError | null;
918920
/** The collection of addresses loaded using address lookup tables */
919921
loadedAddresses?: LoadedAddresses;
922+
/** The compute units consumed after processing the transaction */
923+
computeUnitsConsumed?: number;
920924
};
921925

922926
/**
@@ -1993,6 +1997,7 @@ const ConfirmedTransactionMetaResult = pick({
19931997
preTokenBalances: optional(nullable(array(TokenBalanceResult))),
19941998
postTokenBalances: optional(nullable(array(TokenBalanceResult))),
19951999
loadedAddresses: optional(LoadedAddressesResult),
2000+
computeUnitsConsumed: optional(number()),
19962001
});
19972002

19982003
/**
@@ -2017,6 +2022,7 @@ const ParsedConfirmedTransactionMetaResult = pick({
20172022
preTokenBalances: optional(nullable(array(TokenBalanceResult))),
20182023
postTokenBalances: optional(nullable(array(TokenBalanceResult))),
20192024
loadedAddresses: optional(LoadedAddressesResult),
2025+
computeUnitsConsumed: optional(number()),
20202026
});
20212027

20222028
const TransactionVersionStruct = union([literal(0), literal('legacy')]);

‎test/connection.test.ts

+4
Original file line numberDiff line numberDiff line change
@@ -4460,6 +4460,8 @@ describe('Connection', function () {
44604460
readonly: [],
44614461
writable: [lookupTableAddresses[0]],
44624462
});
4463+
expect(fetchedTransaction.meta?.computeUnitsConsumed).to.not.be
4464+
.undefined;
44634465
expect(
44644466
fetchedTransaction.transaction.message.addressTableLookups,
44654467
).to.eql(addressTableLookups);
@@ -4489,6 +4491,8 @@ describe('Connection', function () {
44894491
readonly: [],
44904492
writable: [lookupTableAddresses[0]],
44914493
});
4494+
expect(parsedTransaction?.meta?.computeUnitsConsumed).to.not.be
4495+
.undefined;
44924496
expect(
44934497
parsedTransaction?.transaction.message.addressTableLookups,
44944498
).to.eql(addressTableLookups);

0 commit comments

Comments
 (0)
This repository has been archived.