Documentación de SolanaLiteSVMTypeScriptReferencia de API

Configuración

LiteSVM utiliza un patrón de construcción para la configuración. Todos los métodos devuelven LiteSVM para encadenamiento.

Configuración típica de pruebas

import { createClient, generateKeyPairSigner } from "@solana/kit";
import { litesvm } from "@solana/kit-plugin-litesvm";
import { signer } from "@solana/kit-plugin-signer";
const mySigner = await generateKeyPairSigner();
const client = createClient().use(signer(mySigner)).use(litesvm());
client.svm
.withSigverify(false) // Skip signature verification (faster)
.withBlockhashCheck(false) // Skip blockhash validation (simpler)
.withSysvars() // Enable Clock, Rent, etc.
.withBuiltins() // Enable ed25519, secp256k1
.withTransactionHistory(100n); // Store last 100 transactions

Firma y Blockhash

withSigverify

withSigverify(sigverify: boolean): LiteSVM

Activa o desactiva la verificación de firmas.

// Disable for faster tests (default is enabled)
client.svm.withSigverify(false);
// Enable for production-like testing
client.svm.withSigverify(true);

Deshabilitar la verificación de firmas hace que las pruebas sean más rápidas, pero menos realistas.

withBlockhashCheck

withBlockhashCheck(check: boolean): LiteSVM

Activa o desactiva la verificación de expiración de blockhash.

// Disable for simpler tests
client.svm.withBlockhashCheck(false);

Programas y Sysvars

withSysvars

withSysvars(): LiteSVM

Habilita las cuentas sysvar (Clock, rent, EpochSchedule, etc.).

client.svm.withSysvars();
// Now you can access sysvars
const clock = client.svm.getClock();
const rent = client.svm.getRent();

withBuiltins

withBuiltins(): LiteSVM

Habilita los programas integrados (verificación de firmas ed25519, secp256k1).

client.svm.withBuiltins();

withPrecompiles

withPrecompiles(): LiteSVM

Habilita los programas precompilados.

client.svm.withPrecompiles();

withDefaultPrograms

withDefaultPrograms(): LiteSVM

Agrega los programas predeterminados (System Program, BPF Loader, etc.).

client.svm.withDefaultPrograms();

Límites de recursos

withLamports

withLamports(lamports: bigint): LiteSVM

Establece los lamport predeterminados para las cuentas.

client.svm.withLamports(1_000_000_000n); // 1 SOL

withLogBytesLimit

withLogBytesLimit(limit?: bigint): LiteSVM

Establece el límite de bytes para la salida del registro.

client.svm.withLogBytesLimit(10000n);

withTransactionHistory

withTransactionHistory(capacity: bigint): LiteSVM

Habilita el almacenamiento del historial de transacciones.

// Store last 100 transactions
client.svm.withTransactionHistory(100n);

Conjuntos de características

withFeatureSet

withFeatureSet(featureSet: FeatureSet): LiteSVM

Configura el conjunto de características para probar versiones específicas de Solana.

Is this page helpful?

Tabla de Contenidos

Editar Página