Skip to content

Commit fa98912

Browse files
committed
Merge branch 'feat/issue12031-listing-pagination' of https://github.com/mcanouil/quarto-cli into pr/mcanouil/13126
2 parents 05bc304 + 18e1992 commit fa98912

1 file changed

Lines changed: 43 additions & 0 deletions

File tree

tests/smoke/site/render-listings.test.ts

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,3 +75,46 @@ testQuartoCmd(
7575
},
7676
},
7777
);
78+
79+
// Pagination options test
80+
const paginationInput = docs("listings/pagination/index.qmd");
81+
const paginationOutputDir = join(docs("listings/pagination"), "_site");
82+
const paginationHtmlOutput = join(paginationOutputDir, "index.html");
83+
84+
const paginationVerify: Verify[] = [];
85+
paginationVerify.push(fileExists(paginationHtmlOutput));
86+
87+
// Test pagination elements exist
88+
paginationVerify.push(
89+
ensureHtmlElements(paginationHtmlOutput, [
90+
"#listing-default-pagination-pagination",
91+
"#listing-custom-pagination-pagination",
92+
"#listing-zero-inner-window-pagination",
93+
"#listing-default-pagination-pagination li.page-item a.page-link",
94+
]),
95+
);
96+
97+
// Test pagination configuration values in generated JavaScript
98+
paginationVerify.push(
99+
ensureFileRegexMatches(paginationHtmlOutput, [
100+
// Default pagination uses innerWindow: 2
101+
/listing-default-pagination.*innerWindow: 2/,
102+
// Custom pagination uses specified values
103+
/listing-custom-pagination.*innerWindow: 1/,
104+
/listing-custom-pagination.*outerWindow: 1/,
105+
// Zero inner-window should be output (regression test for falsy bug fix)
106+
/listing-zero-inner-window.*innerWindow: 0/,
107+
]),
108+
);
109+
110+
testQuartoCmd(
111+
"render",
112+
[dirname(paginationInput)],
113+
paginationVerify,
114+
{
115+
name: "Pagination Options Test",
116+
teardown: async () => {
117+
await Deno.remove(paginationOutputDir, { recursive: true });
118+
},
119+
},
120+
);

0 commit comments

Comments
 (0)