datahaven/test/moonwall.config.json
Ahmad Kaouk 82c7156fd2
test: port common tests from moonbeam (#223)
## 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
2025-10-28 11:03:40 +00:00

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"
]
}
]
}
}
]
}