pump-testing
Multi-language test infrastructure for the Pump SDK — Rust unit/integration/security/performance tests, TypeScript Jest tests, Python fuzz tests, shell test orchestration, Criterion benchmarks, and CI quality gates.
- License 许可
- MIT
- 最近更新
- 2026-08-01
- Stars
- ★ 2
- Forks
- 3
01 前言 Front Matter
- name
- pump-testing
- metadata
- { "solanaos": { "homepage": "https://github.com/nirholas/pump-fun-sdk" } }
- description
- Multi-language test infrastructure for the Pump SDK — Rust unit/integration/security/performance tests, TypeScript Jest tests, Python fuzz tests, shell test orchestration, Criterion benchmarks, and CI quality gates.
03 SKILL.md 正文
Testing & Quality — Multi-Language Test Infrastructure
Comprehensive test infrastructure spanning Rust, TypeScript, Python, and Bash with CI quality gates.
Test Matrix
| Language | Framework | Directory | Focus |
|---|---|---|---|
| Rust | cargo test |
rust/tests/ |
Unit, integration, security |
| Rust | Criterion | rust/benches/ |
Performance benchmarks |
| TypeScript | Jest | typescript/tests/ |
Unit, integration |
| TypeScript | Jest | tests/ |
SDK tests |
| Python | Custom | tests/fuzz/ |
Fuzzing |
| Bash | Custom | tests/cli/ |
CLI integration |
Running Tests
# Rust
cargo test # All tests
cargo test --test integration_tests # Integration only
cargo test --test security_tests # Security only
cargo test --test performance_tests # Performance only
cargo bench # Criterion benchmarks
# TypeScript
npx jest # All Jest tests
npx jest --coverage # With coverage
# Shell
bash scripts/test-rust.sh # Full Rust test orchestration
bash docs/run-all-tests.sh # Run everything
Test Orchestration (test-rust.sh — 10 Steps)
- Check Rust toolchain
- Run
cargo fmt --check - Run
cargo clippy - Run unit tests
- Run integration tests
- Run security tests
- Run performance tests
- Run benchmarks
- Build release binary
- Verify binary output
Quality Gates
| Gate | Threshold |
|---|---|
| Rust tests | All pass |
| TypeScript tests | All pass |
cargo clippy |
No warnings |
cargo fmt |
Formatted |
| Coverage | >70% |
Stress / Benchmark Tests
# Rust benchmarks
cargo bench --bench generation_bench
# Stress tests
tests/stress/ # Long-running stability tests
tests/benchmarks/ # SDK benchmark tests
Patterns to Follow
- Write tests alongside implementation — not as an afterthought
- Test edge cases: zero amounts, null accounts, maximum values
- Test roundtrip consistency: buy→sell should approximate original (minus fees)
- Use transaction simulation for on-chain behavior verification
- Mock Anchor programs for offline SDK tests
Common Pitfalls
- Devnet RPC may be rate-limited — use retries in integration tests
cargo benchrequires release profile — debug builds give misleading numbers- Jest
ts-jestmay need explicittsconfig.test.json - Python fuzz tests may run indefinitely — set timeouts
04 同仓库更多 Skills
solana-dev
End-to-end Solana development playbook (Jan 2026). Prefer Solana Foundation framework-kit (@solana/client + @solana/react-hooks) for React/Next.js UI. Prefer @solana/kit for all new client/RPC/transaction code. When legacy dependencies require web3.js, isolate it behind @solana/web3-compat (or @solana/web3.js as a true legacy fallback). Covers wallet-standard-first connection (incl. ConnectorKit), Anchor/Pinocchio programs, Codama-based client generation, LiteSVM/Mollusk/Surfpool testing, and security checklists.
xurl
A CLI tool for making authenticated requests to the X (Twitter) API. Use this skill when you need to post tweets, reply, quote, search, read posts, manage followers, send DMs, upload media, or interact with any X API v2 endpoint.
wurk-integration
WURK API integration for monetizing agents with x402 payments on Solana/Base - create social jobs, custom challenges, and agent help tasks
workflows
Manage application workflows including configuration, restart, and removal.
web-search
Search the web, fetch content, extract branding profiles, and capture screenshots from URLs. Use for real-time information, API documentation, current events, design matching, and visual reference.
weather
Get current weather and forecasts via wttr.in or Open-Meteo. Use when: user asks about weather, temperature, or forecasts for any location. NOT for: historical weather data, severe weather alerts, or detailed meteorological analysis. No API key needed.