neotest: export nonce() method
Sometimes user needs to construct transaction by itself, so it's better to unify nonce sources for auto-generated and manually-generated transactions to avoid nonce collisions in tests.
This commit is contained in:
parent
0a7f8afcea
commit
4df5d370c5
2 changed files with 4 additions and 3 deletions
|
@ -2,7 +2,8 @@ package neotest
|
||||||
|
|
||||||
var _nonce uint32
|
var _nonce uint32
|
||||||
|
|
||||||
func nonce() uint32 {
|
// Nonce returns unique number that can be used as nonce for new transactions.
|
||||||
|
func Nonce() uint32 {
|
||||||
_nonce++
|
_nonce++
|
||||||
return _nonce
|
return _nonce
|
||||||
}
|
}
|
||||||
|
|
|
@ -69,7 +69,7 @@ func (e *Executor) NewUnsignedTx(t *testing.T, hash util.Uint160, method string,
|
||||||
|
|
||||||
script := w.Bytes()
|
script := w.Bytes()
|
||||||
tx := transaction.New(script, 0)
|
tx := transaction.New(script, 0)
|
||||||
tx.Nonce = nonce()
|
tx.Nonce = Nonce()
|
||||||
tx.ValidUntilBlock = e.Chain.BlockHeight() + 1
|
tx.ValidUntilBlock = e.Chain.BlockHeight() + 1
|
||||||
return tx
|
return tx
|
||||||
}
|
}
|
||||||
|
@ -157,7 +157,7 @@ func (e *Executor) NewDeployTx(t *testing.T, bc blockchainer.Blockchainer, c *Co
|
||||||
require.NoError(t, buf.Err)
|
require.NoError(t, buf.Err)
|
||||||
|
|
||||||
tx := transaction.New(buf.Bytes(), 100*native.GASFactor)
|
tx := transaction.New(buf.Bytes(), 100*native.GASFactor)
|
||||||
tx.Nonce = nonce()
|
tx.Nonce = Nonce()
|
||||||
tx.ValidUntilBlock = bc.BlockHeight() + 1
|
tx.ValidUntilBlock = bc.BlockHeight() + 1
|
||||||
tx.Signers = []transaction.Signer{{
|
tx.Signers = []transaction.Signer{{
|
||||||
Account: e.Committee.ScriptHash(),
|
Account: e.Committee.ScriptHash(),
|
||||||
|
|
Loading…
Reference in a new issue