← back to build-pages
smoke: 3 ?since= assertions across /api/search + /api/projects/:slug/commits
035207bc0ee7df6325d96026b51a5931716ddf5e · 2026-05-13 18:38:33 -0700 · SteveStudio2
Files touched
Diff
commit 035207bc0ee7df6325d96026b51a5931716ddf5e
Author: SteveStudio2 <stevestudio2@SteveStacStudio.lan>
Date: Wed May 13 18:38:33 2026 -0700
smoke: 3 ?since= assertions across /api/search + /api/projects/:slug/commits
---
test/smoke.js | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/test/smoke.js b/test/smoke.js
index ba3435c..59e339c 100644
--- a/test/smoke.js
+++ b/test/smoke.js
@@ -240,7 +240,7 @@ function check(name, cond, hint = '') {
check(`facet ${facet}: field`, new RegExp(`"${facet}":`).test(r.body));
}
- // 14. cross-project search (round-robin merge + per-project breakdown)
+ // 14. cross-project search (round-robin merge + per-project breakdown + ?since=)
r = await fetch('/api/search?q=whisper&limit=10');
check('search: 200', r.status === 200);
check('search: results array', /"results":\[/.test(r.body));
@@ -248,6 +248,12 @@ function check(name, cond, hint = '') {
check('search: by_project', /"by_project":\[/.test(r.body));
r = await fetch('/api/search?q=a');
check('search: <2 chars → empty',/"results":\[\]/.test(r.body));
+ // ?since= smoke for both endpoints that gained it via parseSince()
+ r = await fetch('/api/search?q=commit&since=7d&limit=5');
+ check('search ?since=7d: 200', r.status === 200);
+ r = await fetch('/api/projects/butlr/commits?since=7d&limit=5');
+ check('commits ?since=7d: 200', r.status === 200);
+ check('commits ?since=7d: since field', /"since":"[\d-]+T/.test(r.body));
// Report
if (process.argv.includes('--json')) {
← 4a5298c refactor: parseSince() helper — apply ?since= filter to /api
·
back to build-pages
·
ui: commit-list <li id="hash"> deep-link anchors + :target h 7fbdfa0 →