chore: sanitize tests, add CONTEXT.md + ADRs, track tests/docs

This commit is contained in:
tommy0103
2026-07-08 16:11:12 +08:00
parent d5d5df46fa
commit 1a34245618
19 changed files with 3880 additions and 31 deletions
+56
View File
@@ -0,0 +1,56 @@
import { test } from 'node:test';
import assert from 'node:assert/strict';
import { buildSidebarProjects } from '../app/renderer/src/sidebar-projects.mjs';
test('session sidebar projects follow database recency order instead of label order', () => {
const sessions = [
{ project: '-Users-dev-Code-sample-cli-' },
{ project: '-Users-dev-Code-quiet-zero' },
{ project: '-Users-dev-Code-quiet-zero' },
{ project: '-Users-dev-Library-Application-Support-Example-App-namespaces-release-stable-data-projects-00000000-1111-2222-3333-444444444444' },
];
const projects = [
{ project: '-Users-dev-Code-quiet-zero' },
{ project: '-Users-dev-Code-sample-cli-' },
{ project: '-Users-dev-Library-Application-Support-Example-App-namespaces-release-stable-data-projects-00000000-1111-2222-3333-444444444444' },
];
const labels = {
'-Users-dev-Code-sample-cli-': 'sample-cli+',
'-Users-dev-Code-quiet-zero': 'quiet-zero',
'-Users-dev-Library-Application-Support-Example-App-namespaces-release-stable-data-projects-00000000-1111-2222-3333-444444444444': '00000000-1111-2...',
};
const result = buildSidebarProjects({
routeType: 'sessions',
sessions,
projects,
formatProjectLabel: slug => labels[slug] || slug,
});
assert.deepEqual(result.map(project => project.label), [
'quiet-zero',
'sample-cli+',
'00000000-1111-2...',
]);
assert.equal(result[0].count, 2);
});
test('memory sidebar projects filter by archive state and label search', () => {
const result = buildSidebarProjects({
routeType: 'memory',
view: 'active',
search: 'quiet',
memories: [
{ project: 'quiet-zero', archived: false },
{ project: 'quiet-zero', archived: true },
{ project: 'sample-lib', archived: false },
],
projects: [
{ project: 'sample-lib' },
{ project: 'quiet-zero' },
],
formatProjectLabel: slug => slug,
});
assert.deepEqual(result, [{ slug: 'quiet-zero', label: 'quiet-zero', count: 1 }]);
});