aboutsummaryrefslogtreecommitdiffstats
path: root/core/lattice_test.go
diff options
context:
space:
mode:
authorJimmy Hu <jimmy.hu@dexon.org>2018-10-04 17:19:28 +0800
committerGitHub <noreply@github.com>2018-10-04 17:19:28 +0800
commit604dd7e52c8cbffd7646205c464f7333d215ceb6 (patch)
tree9f4b8ade150981f5491b27ffee07bdf6e4e74918 /core/lattice_test.go
parentb4764a67bc19b2b9ea6f07d45a1275f530060c68 (diff)
downloaddexon-consensus-604dd7e52c8cbffd7646205c464f7333d215ceb6.tar
dexon-consensus-604dd7e52c8cbffd7646205c464f7333d215ceb6.tar.gz
dexon-consensus-604dd7e52c8cbffd7646205c464f7333d215ceb6.tar.bz2
dexon-consensus-604dd7e52c8cbffd7646205c464f7333d215ceb6.tar.lz
dexon-consensus-604dd7e52c8cbffd7646205c464f7333d215ceb6.tar.xz
dexon-consensus-604dd7e52c8cbffd7646205c464f7333d215ceb6.tar.zst
dexon-consensus-604dd7e52c8cbffd7646205c464f7333d215ceb6.zip
core: Check sorted ack in sanity check (#173)
Diffstat (limited to 'core/lattice_test.go')
-rw-r--r--core/lattice_test.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/core/lattice_test.go b/core/lattice_test.go
index 2115d1a..bf65684 100644
--- a/core/lattice_test.go
+++ b/core/lattice_test.go
@@ -220,6 +220,17 @@ func (s *LatticeTestSuite) TestSanityCheck() {
b.Signature, err = auth.prvKey.Sign(common.NewRandomHash())
req.NoError(err)
req.Equal(lattice.SanityCheck(b), ErrIncorrectSignature)
+ // A block with un-sorted acks should not pass sanity check.
+ b.Acks = common.NewSortedHashes(common.Hashes{
+ common.NewRandomHash(),
+ common.NewRandomHash(),
+ common.NewRandomHash(),
+ common.NewRandomHash(),
+ common.NewRandomHash(),
+ })
+ b.Acks[0], b.Acks[1] = b.Acks[1], b.Acks[0]
+ req.NoError(auth.SignBlock(b))
+ req.Equal(lattice.SanityCheck(b), ErrAcksNotSorted)
// A block with incorrect hash should not pass sanity check.
b.Hash = common.NewRandomHash()
req.Equal(lattice.SanityCheck(b), ErrIncorrectHash)