@@ -86,14 +86,28 @@ func TestTraceTransaction(t *testing.T) {
86
86
handler := rpc .New (mockReader , mockSyncReader , mockVM , "" , utils .NewNopZapLogger ())
87
87
88
88
t .Run ("not found" , func (t * testing.T ) {
89
- hash := utils .HexToFelt (t , "0xBBBB" )
90
- // Receipt() returns error related to db
91
- mockReader .EXPECT ().Receipt (hash ).Return (nil , nil , uint64 (0 ), db .ErrKeyNotFound )
89
+ t .Run ("key not found" , func (t * testing.T ) {
90
+ hash := utils .HexToFelt (t , "0xBBBB" )
91
+ // Receipt() returns error related to db
92
+ mockReader .EXPECT ().Receipt (hash ).Return (nil , nil , uint64 (0 ), db .ErrKeyNotFound )
93
+ mockSyncReader .EXPECT ().Pending ().Return (& sync.Pending {Block : & core.Block {}}, nil )
94
+
95
+ trace , httpHeader , err := handler .TraceTransaction (context .Background (), * hash )
96
+ assert .Nil (t , trace )
97
+ assert .Equal (t , rpc .ErrTxnHashNotFound , err )
98
+ assert .Equal (t , httpHeader .Get (rpc .ExecutionStepsHeader ), "0" )
99
+ })
92
100
93
- trace , httpHeader , err := handler .TraceTransaction (context .Background (), * hash )
94
- assert .Nil (t , trace )
95
- assert .Equal (t , rpc .ErrTxnHashNotFound , err )
96
- assert .Equal (t , httpHeader .Get (rpc .ExecutionStepsHeader ), "0" )
101
+ t .Run ("other error" , func (t * testing.T ) {
102
+ hash := utils .HexToFelt (t , "0xBBBB" )
103
+ // Receipt() returns some other error
104
+ mockReader .EXPECT ().Receipt (hash ).Return (nil , nil , uint64 (0 ), errors .New ("database error" ))
105
+
106
+ trace , httpHeader , err := handler .TraceTransaction (context .Background (), * hash )
107
+ assert .Nil (t , trace )
108
+ assert .Equal (t , rpc .ErrTxnHashNotFound , err )
109
+ assert .Equal (t , httpHeader .Get (rpc .ExecutionStepsHeader ), "0" )
110
+ })
97
111
})
98
112
t .Run ("ok" , func (t * testing.T ) {
99
113
hash := utils .HexToFelt (t , "0x37b244ea7dc6b3f9735fba02d183ef0d6807a572dd91a63cc1b14b923c1ac0" )
0 commit comments