public void Indexed_attestation_there_and_back() { AttestationData data = new AttestationData(); data.Slot = new Slot(1); data.CommitteeIndex = new CommitteeIndex(2); data.BeaconBlockRoot = Sha256.OfAnEmptyString; data.Source = new Checkpoint(new Epoch(1), Sha256.OfAnEmptyString); data.Target = new Checkpoint(new Epoch(2), Sha256.OfAnEmptyString); IndexedAttestation container = new IndexedAttestation(); container.AttestingIndices = new ValidatorIndex[3]; container.Data = data; container.Signature = BlsSignature.TestSig1; Span <byte> encoded = new byte[IndexedAttestation.SszLength(container)]; Ssz.Encode(encoded, container); IndexedAttestation decoded = Ssz.DecodeIndexedAttestation(encoded); Assert.AreEqual(container, decoded); Merkle.Ize(out UInt256 root, container); }
public void Indexed_attestation_there_and_back() { AttestationData data = new AttestationData( new Slot(1), new CommitteeIndex(2), Sha256.RootOfAnEmptyString, new Checkpoint(new Epoch(1), Sha256.RootOfAnEmptyString), new Checkpoint(new Epoch(2), Sha256.RootOfAnEmptyString)); IndexedAttestation container = new IndexedAttestation( new ValidatorIndex[3], data, TestSig1); Span <byte> encoded = new byte[Ssz.IndexedAttestationLength(container)]; Ssz.Encode(encoded, container); IndexedAttestation decoded = Ssz.DecodeIndexedAttestation(encoded); decoded.ShouldBe(container); Merkle.Ize(out UInt256 root, container); }