diff options
author | Wei-Ning Huang <w@dexon.org> | 2018-10-01 18:19:52 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-01 18:19:52 +0800 |
commit | 9c33b9dc8aa59d414a6697f1e2d036e5581860ee (patch) | |
tree | 74a4a77b5c28fa9a550fe1ba40b5b2efac0e7630 /core/compaction-chain_test.go | |
parent | 9b78db7a4744176070bf968d50dbebb191b28b69 (diff) | |
download | tangerine-consensus-9c33b9dc8aa59d414a6697f1e2d036e5581860ee.tar.gz tangerine-consensus-9c33b9dc8aa59d414a6697f1e2d036e5581860ee.tar.zst tangerine-consensus-9c33b9dc8aa59d414a6697f1e2d036e5581860ee.zip |
core: update data model to reflect new model (#157)
Update data model:
1) Remove witness ack.
2) Add round to block.
3) Update governance interface.
Diffstat (limited to 'core/compaction-chain_test.go')
-rw-r--r-- | core/compaction-chain_test.go | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/core/compaction-chain_test.go b/core/compaction-chain_test.go index 634cc68..b8f446e 100644 --- a/core/compaction-chain_test.go +++ b/core/compaction-chain_test.go @@ -23,7 +23,6 @@ import ( "github.com/dexon-foundation/dexon-consensus-core/common" "github.com/dexon-foundation/dexon-consensus-core/core/blockdb" - "github.com/dexon-foundation/dexon-consensus-core/core/crypto/ecdsa" "github.com/dexon-foundation/dexon-consensus-core/core/types" "github.com/stretchr/testify/suite" ) @@ -81,74 +80,10 @@ func (s *CompactionChainTestSuite) TestProcessBlock() { s.Equal(cc.prevBlock, prevBlock) err := cc.processBlock(block) s.Require().Nil(err) - if prevBlock != nil { - s.Equal(block.Witness.Height, prevBlock.Witness.Height+1) - prevHash, err := hashWitness(prevBlock) - s.Require().Nil(err) - s.Equal(prevHash, block.Witness.ParentHash) - } prevBlock = block } } -func (s *CompactionChainTestSuite) TestProcessWitnessAck() { - cc := s.newCompactionChain() - blocks := s.generateBlocks(10, cc) - prv1, err := ecdsa.NewPrivateKey() - s.Require().Nil(err) - prv2, err := ecdsa.NewPrivateKey() - s.Require().Nil(err) - nID1 := types.NewNodeID(prv1.PublicKey()) - nID2 := types.NewNodeID(prv2.PublicKey()) - auth1 := NewAuthenticator(prv1) - auth2 := NewAuthenticator(prv2) - witnessAcks1 := []*types.WitnessAck{} - witnessAcks2 := []*types.WitnessAck{} - for _, block := range blocks { - cc.prevBlock = block - witnessAck1, err := auth1.SignAsWitnessAck(block) - s.Require().Nil(err) - witnessAck2, err := auth2.SignAsWitnessAck(block) - s.Require().Nil(err) - witnessAcks1 = append(witnessAcks1, witnessAck1) - witnessAcks2 = append(witnessAcks2, witnessAck2) - } - // The acked block is not yet in db. - err = cc.processWitnessAck(witnessAcks1[0]) - s.Nil(err) - s.Equal(0, len(cc.witnessAcks())) - err = cc.processWitnessAck(witnessAcks2[1]) - s.Nil(err) - s.Equal(0, len(cc.witnessAcks())) - // Insert to block to db and trigger processPendingWitnessAck. - s.Require().Nil(s.db.Put(*blocks[0])) - s.Require().Nil(s.db.Put(*blocks[1])) - err = cc.processWitnessAck(witnessAcks1[2]) - s.Nil(err) - s.Equal(2, len(cc.witnessAcks())) - - // Test the witnessAcks should be the last witnessAck. - s.Require().Nil(s.db.Put(*blocks[2])) - s.Require().Nil(s.db.Put(*blocks[3])) - s.Nil(cc.processWitnessAck(witnessAcks1[3])) - - acks := cc.witnessAcks() - s.Equal(blocks[3].Hash, acks[nID1].WitnessBlockHash) - s.Equal(blocks[1].Hash, acks[nID2].WitnessBlockHash) - - // Test that witnessAck on less Witness.Height should be ignored. - s.Require().Nil(s.db.Put(*blocks[4])) - s.Require().Nil(s.db.Put(*blocks[5])) - s.Nil(cc.processWitnessAck(witnessAcks1[5])) - s.Nil(cc.processWitnessAck(witnessAcks2[5])) - s.Nil(cc.processWitnessAck(witnessAcks1[4])) - s.Nil(cc.processWitnessAck(witnessAcks2[4])) - - acks = cc.witnessAcks() - s.Equal(blocks[5].Hash, acks[nID1].WitnessBlockHash) - s.Equal(blocks[5].Hash, acks[nID2].WitnessBlockHash) -} - func TestCompactionChain(t *testing.T) { suite.Run(t, new(CompactionChainTestSuite)) } |