LiteSVM은 설정을 위해 빌더 패턴을 사용합니다. 모든 메서드는 체이닝을 위해 LiteSVM을 반환합니다.
일반적인 테스트 설정
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
서명 및 블록해시
withSigverify
withSigverify(sigverify: boolean): LiteSVM
서명 검증을 활성화하거나 비활성화합니다.
// Disable for faster tests (default is enabled)client.svm.withSigverify(false);// Enable for production-like testingclient.svm.withSigverify(true);
서명 검증을 비활성화하면 테스트 속도가 빨라지지만 현실성이 떨어집니다.
withBlockhashCheck
withBlockhashCheck(check: boolean): LiteSVM
블록해시 만료 확인을 활성화하거나 비활성화합니다.
// Disable for simpler testsclient.svm.withBlockhashCheck(false);
프로그램 및 Sysvar
withSysvars
withSysvars(): LiteSVM
Sysvar 계정(Clock, Rent, EpochSchedule 등)을 활성화합니다.
client.svm.withSysvars();// Now you can access sysvarsconst clock = client.svm.getClock();const rent = client.svm.getRent();
withBuiltins
withBuiltins(): LiteSVM
내장 프로그램(ed25519, secp256k1 서명 검증)을 활성화합니다.
client.svm.withBuiltins();
withPrecompiles
withPrecompiles(): LiteSVM
사전 컴파일된 프로그램을 활성화합니다.
client.svm.withPrecompiles();
withDefaultPrograms
withDefaultPrograms(): LiteSVM
기본 프로그램(System Program, BPF Loader 등)을 추가합니다.
client.svm.withDefaultPrograms();
리소스 한도
withLamports
withLamports(lamports: bigint): LiteSVM
계정의 기본 lamport를 설정합니다.
client.svm.withLamports(1_000_000_000n); // 1 SOL
withLogBytesLimit
withLogBytesLimit(limit?: bigint): LiteSVM
로그 출력 바이트 한도를 설정합니다.
client.svm.withLogBytesLimit(10000n);
withTransactionHistory
withTransactionHistory(capacity: bigint): LiteSVM
트랜잭션 기록 저장을 활성화합니다.
// Store last 100 transactionsclient.svm.withTransactionHistory(100n);
기능 세트
withFeatureSet
withFeatureSet(featureSet: FeatureSet): LiteSVM
특정 Solana 버전 테스트를 위한 기능 세트를 설정합니다.
Is this page helpful?