mirror of
https://github.com/datahaven-xyz/datahaven
synced 2026-05-23 17:28:23 +00:00
## Overview Ports essential test suites and helper utilities from Moonbeam's battle-tested framework to validate DataHaven's EVM compatibility and precompile functionality. ## What's Included ### 🧪 Test Suites - **Contract Creation Tests** (`test-contract-creation.ts`) - EVM contract deployment verification - CREATE/CREATE2 opcode validation - Smart contract nonce management - Bytecode storage and retrieval - Block fee verification - **Precompile Batch Tests** (`test-precompile-batch.ts`) - Batch operation gas consumption - Recursive batch calls - Call permit integration - EIP-712 signature validation ### 🛠️ Helper Utilities - **Block helpers**: Fee verification, transaction analysis, block exploration - **EVM helpers**: Result validation, signature parsing, receipt handling - **Fee helpers**: Treasury/burn split calculations - **Runtime helpers**: Parameter fetching, versioned constants - **Contract helpers**: Artifact loading, bytecode management ### 📝 Test Contracts - `SimpleContractFactory`: CREATE/CREATE2 test harness - `CallBatchFromConstructor`: Precompile integration tests
53 lines
No EOL
1.3 KiB
JSON
53 lines
No EOL
1.3 KiB
JSON
{
|
|
"$schema": "https://raw.githubusercontent.com/Moonsong-Labs/moonwall/main/packages/types/config_schema.json",
|
|
"label": "DataHaven Tests 🔷",
|
|
"defaultTestTimeout": 180000,
|
|
"scriptsDir": "scripts/",
|
|
"environments": [
|
|
{
|
|
"name": "dev_datahaven",
|
|
"testFileDir": [
|
|
"datahaven/suites/dev"
|
|
],
|
|
"include": [
|
|
"**/*test*.ts"
|
|
],
|
|
"timeout": 180000,
|
|
"multiThreads": 4,
|
|
"contracts": "datahaven/contracts/",
|
|
"runScripts": [
|
|
"compile-contracts.sh compile"
|
|
],
|
|
"envVars": [
|
|
"DEBUG_COLORS=1"
|
|
],
|
|
"reporters": [
|
|
"basic",
|
|
"html",
|
|
"json"
|
|
],
|
|
"reportFile": {
|
|
"json": "./tmp/testResults.json"
|
|
},
|
|
"foundation": {
|
|
"type": "dev",
|
|
"launchSpec": [
|
|
{
|
|
"name": "datahaven",
|
|
"binPath": "../operator/target/release/datahaven-node",
|
|
"newRpcBehaviour": true,
|
|
"options": [
|
|
"--dev",
|
|
"--no-telemetry",
|
|
"--unsafe-force-node-key-generation",
|
|
"--reserved-only",
|
|
"--no-grandpa",
|
|
"--no-prometheus",
|
|
"--sealing=manual"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
} |