From 1835ca8fd6c55393bc72138d0bcbe88d97dde69c Mon Sep 17 00:00:00 2001 From: Paul Hauner Date: Tue, 14 May 2019 16:56:00 +1000 Subject: [PATCH] Add progress on ssz_static tests --- .../ef_tests/src/test_doc_cases/ssz_static.rs | 32 +++++++++++++++++-- tests/ef_tests/tests/tests.rs | 1 + 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/tests/ef_tests/src/test_doc_cases/ssz_static.rs b/tests/ef_tests/src/test_doc_cases/ssz_static.rs index 9d78ddc4a..0af1f26c6 100644 --- a/tests/ef_tests/src/test_doc_cases/ssz_static.rs +++ b/tests/ef_tests/src/test_doc_cases/ssz_static.rs @@ -1,6 +1,11 @@ use super::*; use serde::de::{Deserialize, Deserializer}; -use types::Fork; +use types::{ + Attestation, AttestationData, AttestationDataAndCustodyBit, AttesterSlashing, BeaconBlock, + BeaconBlockBody, BeaconBlockHeader, BeaconState, Crosslink, Deposit, DepositData, Eth1Data, + Fork, HistoricalBatch, PendingAttestation, ProposerSlashing, Transfer, Validator, + VoluntaryExit, +}; #[derive(Debug, Clone, Deserialize)] pub struct SszStatic { @@ -44,6 +49,29 @@ impl Test for TestDocCases { .map(|(i, tc)| { let result = match tc.type_name.as_ref() { "Fork" => ssz_static_test::(tc), + "Crosslink" => ssz_static_test::(tc), + "Eth1Data" => ssz_static_test::(tc), + "AttestationData" => ssz_static_test::(tc), + /* + "AttestationDataAndCustodyBit" => { + ssz_static_test::(tc) + } + */ + // "IndexedAttestation" => ssz_static_test::(tc), + "DepositData" => ssz_static_test::(tc), + "BeaconBlockHeader" => ssz_static_test::(tc), + "Validator" => ssz_static_test::(tc), + "PendingAttestation" => ssz_static_test::(tc), + // "HistoricalBatch" => ssz_static_test::(tc), + "ProposerSlashing" => ssz_static_test::(tc), + "AttesterSlashing" => ssz_static_test::(tc), + "Attestation" => ssz_static_test::(tc), + "Deposit" => ssz_static_test::(tc), + "VoluntaryExit" => ssz_static_test::(tc), + "Transfer" => ssz_static_test::(tc), + "BeaconBlockBody" => ssz_static_test::(tc), + "BeaconBlock" => ssz_static_test::(tc), + // "BeaconState" => ssz_static_test::(tc), _ => Err(Error::FailedToParseTest(format!( "Unknown type: {}", tc.type_name @@ -58,7 +86,7 @@ impl Test for TestDocCases { fn ssz_static_test(tc: &SszStatic) -> Result<(), Error> where - T: Decode + TestDecode + Debug + PartialEq + serde::de::DeserializeOwned, + T: Decode + Debug + PartialEq + serde::de::DeserializeOwned, { let ssz = hex::decode(&tc.serialized[2..]) .map_err(|e| Error::FailedToParseTest(format!("{:?}", e)))?; diff --git a/tests/ef_tests/tests/tests.rs b/tests/ef_tests/tests/tests.rs index 70966dc90..d0452ab94 100644 --- a/tests/ef_tests/tests/tests.rs +++ b/tests/ef_tests/tests/tests.rs @@ -47,6 +47,7 @@ mod ssz_static { } #[test] + #[ignore] fn minimal_nil() { TestDoc::assert_tests_pass(ssz_generic_file("core/ssz_minimal_nil.yaml")); }