From 4e0b623e5605be431591ad84b6955017870ff6a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96mer=20Faruk=20IRMAK?= Date: Tue, 28 Nov 2023 14:55:29 +0300 Subject: [PATCH] Change TraceTransaction error code on txn hash not found case --- rpc/handlers.go | 8 ++++++-- rpc/handlers_test.go | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/rpc/handlers.go b/rpc/handlers.go index afa7cd2da0..2b9d0da299 100644 --- a/rpc/handlers.go +++ b/rpc/handlers.go @@ -1340,13 +1340,17 @@ func (h *Handler) TraceTransaction(ctx context.Context, hash felt.Felt) (json.Ra // It follows the specification defined here: // https://github.com/starkware-libs/starknet-specs/blob/1ae810e0137cc5d175ace4554892a4f43052be56/api/starknet_trace_api_openrpc.json#L11 func (h *Handler) LegacyTraceTransaction(ctx context.Context, hash felt.Felt) (json.RawMessage, *jsonrpc.Error) { - return h.traceTransaction(ctx, &hash, true) + trace, err := h.traceTransaction(ctx, &hash, true) + if err.Code == ErrTxnHashNotFound.Code { + err = ErrInvalidTxHash + } + return trace, err } func (h *Handler) traceTransaction(ctx context.Context, hash *felt.Felt, legacyTraceJSON bool) (json.RawMessage, *jsonrpc.Error) { _, _, blockNumber, err := h.bcReader.Receipt(hash) if err != nil { - return nil, ErrInvalidTxHash + return nil, ErrTxnHashNotFound } block, err := h.bcReader.BlockByNumber(blockNumber) diff --git a/rpc/handlers_test.go b/rpc/handlers_test.go index 51bd3b8e03..1705371ef8 100644 --- a/rpc/handlers_test.go +++ b/rpc/handlers_test.go @@ -2821,7 +2821,7 @@ func TestTraceTransaction(t *testing.T) { trace, err := handler.TraceTransaction(context.Background(), *hash) assert.Nil(t, trace) - assert.Equal(t, rpc.ErrInvalidTxHash, err) + assert.Equal(t, rpc.ErrTxnHashNotFound, err) }) t.Run("ok", func(t *testing.T) { hash := utils.HexToFelt(t, "0x37b244ea7dc6b3f9735fba02d183ef0d6807a572dd91a63cc1b14b923c1ac0")