All files / test/utils add_transaction_functions.ts

60% Statements 9/15
100% Branches 2/2
45.45% Functions 5/11
60% Lines 9/15

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49  7x   7x     2800x       12351x                       7x     4200x       23856x                       7x     7000x        
import { TransactionObject, Transaction } from '../../src/transaction_pool';
import { TransactionResponse, Status } from '../../src/check_transactions';
 
export const wrapTransactionWithoutUniqueData = (
	transaction: TransactionObject,
): Transaction => {
	return {
		...transaction,
		containsUniqueData: false,
		verifyAgainstOtherTransactions: () => true,
		isExpired: (time: Date) => time.getTime() < 0,
		isReady: () => true,
		addVerifiedSignature: (signature: string): TransactionResponse => {
			return {
				status: Status.OK,
				errors: [],
				id: signature,
			};
		},
	};
};
 
export const wrapTransactionWithUniqueData = (
	transaction: TransactionObject,
): Transaction => {
	return {
		...transaction,
		containsUniqueData: true,
		verifyAgainstOtherTransactions: () => true,
		isExpired: (time: Date) => time.getTime() < 0,
		isReady: () => true,
		addVerifiedSignature: (signature: string): TransactionResponse => {
			return {
				status: Status.OK,
				errors: [],
				id: signature,
			};
		},
	};
};
 
export const wrapTransaction = (
	transaction: TransactionObject,
): Transaction => {
	return [0, 1].includes(transaction.type)
		? wrapTransactionWithoutUniqueData(transaction)
		: wrapTransactionWithUniqueData(transaction);
};