diff options
author | Ganesh Vanahalli <ganesh.vanahalli@algorand.com> | 2022-06-15 11:33:41 -0400 |
---|---|---|
committer | Ganesh Vanahalli <ganesh.vanahalli@algorand.com> | 2022-06-15 11:33:41 -0400 |
commit | 6448f94ecdc6cf37c260684dfa828cbf41891781 (patch) | |
tree | 166ab3425944f2386f96f43c5032a7445d9b78da | |
parent | 569d0f4b46c51af17bce9f194a928b323ff1418c (diff) |
add testpause-on-round-api
-rw-r--r-- | daemon/algod/api/server/v2/handlers.go | 2 | ||||
-rw-r--r-- | daemon/algod/api/server/v2/test/handlers_test.go | 30 |
2 files changed, 31 insertions, 1 deletions
diff --git a/daemon/algod/api/server/v2/handlers.go b/daemon/algod/api/server/v2/handlers.go index beb489802..ef194b07c 100644 --- a/daemon/algod/api/server/v2/handlers.go +++ b/daemon/algod/api/server/v2/handlers.go @@ -1166,7 +1166,7 @@ func (v2 *Handlers) GetPendingTransactionsByAddress(ctx echo.Context, addr strin return v2.getPendingTransactions(ctx, params.Max, params.Format, &addr) } -// Given a block number, it starts catching up and pauses at this block number +// ChangePauseAtRound Given a block number, it starts catching up and pauses at this block number // (POST /v2/pausecatchup/{rnd}) func (v2 *Handlers) ChangePauseAtRound(ctx echo.Context, rnd uint64) error { return v2.changePauseAtRound(ctx, rnd) diff --git a/daemon/algod/api/server/v2/test/handlers_test.go b/daemon/algod/api/server/v2/test/handlers_test.go index af970f4b1..e1a13cb17 100644 --- a/daemon/algod/api/server/v2/test/handlers_test.go +++ b/daemon/algod/api/server/v2/test/handlers_test.go @@ -450,6 +450,36 @@ func TestPostTransaction(t *testing.T) { postTransactionTest(t, 0, 200) } +func changePauseAtRoundTest(t *testing.T, rnd uint64, nodeError error, expectedCode int) { + numAccounts := 1 + numTransactions := 1 + offlineAccounts := true + mockLedger, _, _, _, releasefunc := testingenv(t, numAccounts, numTransactions, offlineAccounts) + defer releasefunc() + dummyShutdownChan := make(chan struct{}) + mockNode := makeMockNode(mockLedger, t.Name(), nodeError) + handler := v2.Handlers{ + Node: mockNode, + Log: logging.Base(), + Shutdown: dummyShutdownChan, + } + e := echo.New() + req := httptest.NewRequest(http.MethodPost, "/", nil) + rec := httptest.NewRecorder() + c := e.NewContext(req, rec) + err := handler.ChangePauseAtRound(c, rnd) + require.NoError(t, err) + require.Equal(t, expectedCode, rec.Code) +} + +func TestChangePauseAtRound(t *testing.T) { + partitiontest.PartitionTest(t) + t.Parallel() + + goodRnd := uint64(100) + changePauseAtRoundTest(t, goodRnd, nil, 201) +} + func startCatchupTest(t *testing.T, catchpoint string, nodeError error, expectedCode int) { numAccounts := 1 numTransactions := 1 |