@@ -2,14 +2,18 @@ package transaction
22
33import (
44 "context"
5+ "crypto/rand"
56 "fmt"
67 "testing"
78 "time"
89
10+ "github.com/mr-tron/base58"
911 "github.com/stretchr/testify/require"
1012
13+ "github.com/code-payments/code-server/pkg/code/common"
1114 code_data "github.com/code-payments/code-server/pkg/code/data"
1215 "github.com/code-payments/code-server/pkg/code/data/nonce"
16+ "github.com/code-payments/code-server/pkg/solana"
1317 "github.com/code-payments/code-server/pkg/testutil"
1418)
1519
@@ -60,6 +64,8 @@ func testLocalNoncePoolHappyPath(nt *localNoncePoolTest) {
6064 require .NoError (nt .t , err )
6165 require .NotNil (nt .t , n )
6266 require .NotContains (nt .t , observed , n .record .Address )
67+ require .Equal (nt .t , n .Account .PublicKey ().ToBase58 (), n .record .Address )
68+ require .Equal (nt .t , base58 .Encode (n .Blockhash [:]), n .record .Blockhash )
6369 observed [n .record .Address ] = n
6470
6571 actual , err := nt .data .GetNonce (ctx , n .record .Address )
@@ -157,6 +163,8 @@ func testLocalNoncePoolReload(nt *localNoncePoolTest) {
157163 require .NoError (nt .t , err )
158164 require .NotNil (nt .t , n )
159165 require .NotContains (nt .t , observed , n .record .Address )
166+ require .Equal (nt .t , n .Account .PublicKey ().ToBase58 (), n .record .Address )
167+ require .Equal (nt .t , base58 .Encode (n .Blockhash [:]), n .record .Blockhash )
160168 observed [n .record .Address ] = n
161169
162170 actual , err := nt .data .GetNonce (ctx , n .record .Address )
@@ -193,6 +201,8 @@ func testLocalNoncePoolRefresh(nt *localNoncePoolTest) {
193201 require .NoError (nt .t , err )
194202 require .NotNil (nt .t , n )
195203 require .NotContains (nt .t , observed , n .record .Address )
204+ require .Equal (nt .t , n .Account .PublicKey ().ToBase58 (), n .record .Address )
205+ require .Equal (nt .t , base58 .Encode (n .Blockhash [:]), n .record .Blockhash )
196206 observed [n .record .Address ] = n
197207
198208 actual , err := nt .data .GetNonce (ctx , n .record .Address )
@@ -235,6 +245,8 @@ type localNoncePoolTest struct {
235245func newLocalNoncePoolTest (t * testing.T ) * localNoncePoolTest {
236246 data := code_data .NewTestDataProvider ()
237247
248+ testutil .SetupRandomSubsidizer (t , data )
249+
238250 pool , err := NewLocalNoncePool (
239251 data ,
240252 nil ,
@@ -257,9 +269,12 @@ func newLocalNoncePoolTest(t *testing.T) *localNoncePoolTest {
257269
258270func (np * localNoncePoolTest ) initializeNonces (amount int , env nonce.Environment , envInstance string , purpose nonce.Purpose ) {
259271 for i := 0 ; i < amount ; i ++ {
272+ var bh solana.Blockhash
273+ rand .Read (bh [:])
260274 err := np .data .SaveNonce (context .Background (), & nonce.Record {
261- Address : fmt .Sprintf ("addr-%s-%s-%s-%d" , env .String (), envInstance , purpose .String (), i ),
262- Authority : "my authority!" ,
275+ Address : testutil .NewRandomAccount (np .t ).PublicKey ().ToBase58 (),
276+ Blockhash : base58 .Encode (bh [:]),
277+ Authority : common .GetSubsidizer ().PublicKey ().ToBase58 (),
263278 Environment : env ,
264279 EnvironmentInstance : envInstance ,
265280 Purpose : purpose ,
0 commit comments