From 21e183c2e4d4204cb49247146cadb1777376dd25 Mon Sep 17 00:00:00 2001 From: Veloman Yunkan Date: Tue, 10 May 2022 13:10:50 +0400 Subject: [PATCH] First test for a non-first page of search results --- test/server.cpp | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/test/server.cpp b/test/server.cpp index d4e325c9e..7347018bc 100644 --- a/test/server.cpp +++ b/test/server.cpp @@ -1521,6 +1521,7 @@ TEST_F(TaskbarlessServerTest, searchResults) }; std::string pattern; + int start; size_t resultsPerPage; size_t totalResultCount; size_t firstResultIndex; @@ -1544,7 +1545,7 @@ TEST_F(TaskbarlessServerTest, searchResults) std::string url() const { - return makeUrl(pattern, -1, resultsPerPage); + return makeUrl(pattern, start, resultsPerPage); } std::string expectedHeader() const @@ -1629,6 +1630,7 @@ TEST_F(TaskbarlessServerTest, searchResults) const TestData testData[] = { { /* pattern */ "velomanyunkan", + /* start */ -1, /* resultsPerPage */ 0, /* totalResultCount */ 0, /* firstResultIndex */ 0, @@ -1638,6 +1640,7 @@ TEST_F(TaskbarlessServerTest, searchResults) { /* pattern */ "razaf", + /* start */ -1, /* resultsPerPage */ 0, /* totalResultCount */ 1, /* firstResultIndex */ 1, @@ -1656,6 +1659,7 @@ R"SEARCHRESULT( { /* pattern */ "beatles", + /* start */ -1, /* resultsPerPage */ 0, /* totalResultCount */ 2, /* firstResultIndex */ 1, @@ -1683,6 +1687,7 @@ R"SEARCHRESULT( { /* pattern */ "jazz", + /* start */ -1, /* resultsPerPage */ 100, /* totalResultCount */ 44, /* firstResultIndex */ 1, @@ -1692,6 +1697,7 @@ R"SEARCHRESULT( { /* pattern */ "jazz", + /* start */ -1, /* resultsPerPage */ 5, /* totalResultCount */ 44, /* firstResultIndex */ 1, @@ -1713,6 +1719,32 @@ R"SEARCHRESULT( { "▶", 40, false }, } }, + + { + /* pattern */ "jazz", + /* start */ 5, + /* resultsPerPage */ 5, + /* totalResultCount */ 44, + /* firstResultIndex */ 6, + /* results */ { + LARGE_SEARCH_RESULTS[5], + LARGE_SEARCH_RESULTS[6], + LARGE_SEARCH_RESULTS[7], + LARGE_SEARCH_RESULTS[8], + LARGE_SEARCH_RESULTS[9], + }, + + /* pagination */ { + { "◀", 0, false }, + { "1", 0, false }, + { "2", 5, true }, + { "3", 10, false }, + { "4", 15, false }, + { "5", 20, false }, + { "6", 25, false }, + { "▶", 40, false }, + } + }, }; for ( const auto& t : testData ) {