revme/cmd/eofvalidation/
test_suite.rs1use revm::primitives::Bytes;
2use serde::Deserialize;
3use std::collections::BTreeMap;
4
5#[derive(Debug, PartialEq, Eq, Deserialize)]
6pub struct TestSuite(pub BTreeMap<String, TestUnit>);
7
8#[derive(Debug, PartialEq, Eq, Deserialize)]
9#[serde(deny_unknown_fields)]
10pub struct TestUnit {
11 #[serde(default, rename = "_info")]
12 pub info: Option<serde_json::Value>,
13 #[serde(default)]
14 pub vectors: BTreeMap<String, TestVector>,
15}
16
17#[derive(Debug, PartialEq, Eq, Deserialize)]
18#[serde(rename_all = "camelCase", deny_unknown_fields)]
19pub struct TestVector {
20 pub code: Bytes,
21 pub container_kind: Option<String>,
22 pub results: BTreeMap<String, TestResult>,
23}
24
25#[derive(Debug, PartialEq, Eq, Deserialize)]
26pub struct TestResult {
27 pub result: bool,
28 pub exception: Option<String>,
29}