@@ -13,11 +13,27 @@ import (
13
13
"github.com/celestiaorg/celestia-node/api/rpc/client"
14
14
"github.com/celestiaorg/celestia-node/blob"
15
15
"github.com/celestiaorg/celestia-node/blob/blobtest"
16
+ "github.com/celestiaorg/celestia-node/libs/authtoken"
16
17
"github.com/celestiaorg/celestia-node/nodebuilder"
17
18
"github.com/celestiaorg/celestia-node/nodebuilder/node"
18
19
"github.com/celestiaorg/celestia-node/nodebuilder/tests/swamp"
19
20
)
20
21
22
+ func getAdminClient (ctx context.Context , nd * nodebuilder.Node , t * testing.T ) * client.Client {
23
+ t .Helper ()
24
+
25
+ signer := nd .AdminSigner
26
+ listenAddr := "ws://" + nd .RPCServer .ListenAddr ()
27
+
28
+ jwt , err := authtoken .NewSignedJWT (signer , []auth.Permission {"public" , "read" , "write" , "admin" })
29
+ require .NoError (t , err )
30
+
31
+ client , err := client .NewClient (ctx , listenAddr , jwt )
32
+ require .NoError (t , err )
33
+
34
+ return client
35
+ }
36
+
21
37
func TestNodeModule (t * testing.T ) {
22
38
ctx , cancel := context .WithTimeout (context .Background (), swamp .DefaultTestTimeout )
23
39
t .Cleanup (cancel )
@@ -66,26 +82,20 @@ func TestGetByHeight(t *testing.T) {
66
82
err := bridge .Start (ctx )
67
83
require .NoError (t , err )
68
84
69
- adminPerms := []auth.Permission {"public" , "read" , "write" , "admin" }
70
- jwt , err := bridge .AdminServ .AuthNew (ctx , adminPerms )
71
- require .NoError (t , err )
72
-
73
- bridgeAddr := "http://" + bridge .RPCServer .ListenAddr ()
74
- client , err := client .NewClient (ctx , bridgeAddr , jwt )
75
- require .NoError (t , err )
85
+ rpcClient := getAdminClient (ctx , bridge , t )
76
86
77
87
// let a few blocks be produced
78
- _ , err = client .Header .WaitForHeight (ctx , 3 )
88
+ _ , err = rpcClient .Header .WaitForHeight (ctx , 3 )
79
89
require .NoError (t , err )
80
90
81
- networkHead , err := client .Header .NetworkHead (ctx )
91
+ networkHead , err := rpcClient .Header .NetworkHead (ctx )
82
92
require .NoError (t , err )
83
- _ , err = client .Header .GetByHeight (ctx , networkHead .Height ()+ 1 )
93
+ _ , err = rpcClient .Header .GetByHeight (ctx , networkHead .Height ()+ 1 )
84
94
require .Nil (t , err , "Requesting syncer.Head()+1 shouldn't return an error" )
85
95
86
- networkHead , err = client .Header .NetworkHead (ctx )
96
+ networkHead , err = rpcClient .Header .NetworkHead (ctx )
87
97
require .NoError (t , err )
88
- _ , err = client .Header .GetByHeight (ctx , networkHead .Height ()+ 2 )
98
+ _ , err = rpcClient .Header .GetByHeight (ctx , networkHead .Height ()+ 2 )
89
99
require .ErrorContains (t , err , "given height is from the future" )
90
100
}
91
101
@@ -101,13 +111,7 @@ func TestBlobRPC(t *testing.T) {
101
111
err := bridge .Start (ctx )
102
112
require .NoError (t , err )
103
113
104
- adminPerms := []auth.Permission {"public" , "read" , "write" , "admin" }
105
- jwt , err := bridge .AdminServ .AuthNew (ctx , adminPerms )
106
- require .NoError (t , err )
107
-
108
- bridgeAddr := "http://" + bridge .RPCServer .ListenAddr ()
109
- client , err := client .NewClient (ctx , bridgeAddr , jwt )
110
- require .NoError (t , err )
114
+ rpcClient := getAdminClient (ctx , bridge , t )
111
115
112
116
appBlobs , err := blobtest .GenerateV0Blobs ([]int {8 }, false )
113
117
require .NoError (t , err )
@@ -119,7 +123,7 @@ func TestBlobRPC(t *testing.T) {
119
123
)
120
124
require .NoError (t , err )
121
125
122
- height , err := client .Blob .Submit (ctx , []* blob.Blob {newBlob }, nil )
126
+ height , err := rpcClient .Blob .Submit (ctx , []* blob.Blob {newBlob }, nil )
123
127
require .NoError (t , err )
124
128
require .True (t , height != 0 )
125
129
}
@@ -147,9 +151,11 @@ func TestHeaderSubscription(t *testing.T) {
147
151
err = light .Start (ctx )
148
152
require .NoError (t , err )
149
153
154
+ lightClient := getAdminClient (ctx , light , t )
155
+
150
156
// subscribe to headers via the light node's RPC header subscription
151
157
subctx , subcancel := context .WithCancel (ctx )
152
- sub , err := light . HeaderServ .Subscribe (subctx )
158
+ sub , err := lightClient . Header .Subscribe (subctx )
153
159
require .NoError (t , err )
154
160
// listen for 5 headers
155
161
for i := 0 ; i < 5 ; i ++ {
0 commit comments