mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2024-12-31 23:41:22 +00:00
3c5f5cfcd3
* deposit definition according to latest spec * ssz decode input data tests * fix todo * ignore XXX fields in struct * fix * timestamp * gazelle run processing * process deposit complete * all logic complete * verify merkle branch * gazelle * process deposit func * diff cov 1005 * add todo" * all test cases written down * most tests complete * ttl timestamp fail * 100% code coverage in deposits * fix params * encode deposit data helper func * state transition with no slots failing with panic at calcnewblockhashes * smaller deposits for chain start * state advancement benches * ran go tests * bazel * improve the thing * lint * works works works * all conflicts fixed * edit readme to specify tests format * edit readme to specify tests format * skip slots works yay * gazelle * edit readme to specify tests format * wrapped up all randao simulation * fix * passing * goimports * move to slices pkg * deadcode * deposit yaml tests * created deposit trie implementation in Go * created deposit trie implementation in Go * gazelle * merkle branch generation * merkle branch generation * more merkle debugging * fix deposit trie * include new merkle trie functions * update all deposit operations * capitalize * advancing deposits fully works, grows the validator set * wrap up time formatting * lint fix * include all information in the README * edit conf * revert * clean up before merge * successfully e2e test proposer slashings * fix comments
57 lines
1.9 KiB
Go
57 lines
1.9 KiB
Go
package backend
|
|
|
|
// StateTest --
|
|
type StateTest struct {
|
|
Title string
|
|
Summary string
|
|
Fork string `yaml:"fork"`
|
|
Version string `yaml:"version"`
|
|
TestSuite string `yaml:"test_suite"`
|
|
TestCases []*StateTestCase `yaml:"test_cases"`
|
|
}
|
|
|
|
// StateTestCase --
|
|
type StateTestCase struct {
|
|
Config *StateTestConfig `yaml:"config"`
|
|
Results *StateTestResults `yaml:"results"`
|
|
}
|
|
|
|
// StateTestConfig --
|
|
type StateTestConfig struct {
|
|
SkipSlots []uint64 `yaml:"skip_slots"`
|
|
DepositSlots []uint64 `yaml:"deposit_slots"`
|
|
Deposits []*StateTestDeposit `yaml:"deposits"`
|
|
ProposerSlashings []*StateTestProposerSlashing `yaml:"proposer_slashings"`
|
|
EpochLength uint64 `yaml:"epoch_length"`
|
|
ShardCount uint64 `yaml:"shard_count"`
|
|
DepositsForChainStart uint64 `yaml:"deposits_for_chain_start"`
|
|
NumSlots uint64 `yaml:"num_slots"`
|
|
}
|
|
|
|
// StateTestDeposit --
|
|
type StateTestDeposit struct {
|
|
Slot uint64 `yaml:"slot"`
|
|
Amount uint64 `yaml:"amount"`
|
|
MerkleIndex uint64 `yaml:"merkle_index"`
|
|
Pubkey string `yaml:"pubkey"`
|
|
}
|
|
|
|
// StateTestProposerSlashing --
|
|
type StateTestProposerSlashing struct {
|
|
Slot uint64 `yaml:"slot"`
|
|
ProposerIndex uint32 `yaml:"proposer_index"`
|
|
Proposal1Shard uint64 `yaml:"proposal_1_shard"`
|
|
Proposal2Shard uint64 `yaml:"proposal_2_shard"`
|
|
Proposal1Slot uint64 `yaml:"proposal_1_slot"`
|
|
Proposal2Slot uint64 `yaml:"proposal_2_slot"`
|
|
Proposal1Root string `yaml:"proposal_1_root"`
|
|
Proposal2Root string `yaml:"proposal_2_root"`
|
|
}
|
|
|
|
// StateTestResults --
|
|
type StateTestResults struct {
|
|
Slot uint64
|
|
NumValidators int `yaml:"num_validators"`
|
|
PenalizedValidators []uint32 `yaml:"penalized_validators"`
|
|
}
|