openreader/tests
Richard R 97dba6d987 refactor(tts,audiobook,tests): centralize TTS catalog, harden epub & UI flows
- Move TTS provider resolution and voice-fetch logic into shared catalog and make
  remote fetches more resilient (timeouts, abort handling, baseUrl normalization,
  treat explicit empty custom-openai responses as valid).
- Add continuation guard to TTS feature set and update API voices endpoint error
  logging to better surface auth/session failures.
- Extract and stabilize ebook pipeline and epub adapter:
  - Cache prepared EPUB chapters to avoid repeated parsing and handle missing/empty
    chapter titles safely.
  - Fail early when created chapter lacks a bookId.
- Improve config/preferences handling:
  - Replace JSON stringify comparisons with a deepEqual utility to compare defaults.
  - Tighten ConfigContext effect dependencies and consolidate synced preference
    queuing logic to include additional keys.
- Harden end-to-end test helpers and unit tests:
  - Make settings dialog dismissal deterministic (use Enter/Escape and explicit
    visibility/enabled checks) and simplify upload retry behavior.
  - Add unit test to ensure custom-openai empty voice lists are preserved.

Why: Reduce runtime and test flakiness, centralize TTS logic for easier maintenance,
and make EPUB processing and preference diffing more robust. Breaking changes: none.
2026-04-06 10:28:00 -06:00
..
files feat(tts): add smart sentence continuation 2025-11-14 12:00:03 -07:00
unit refactor(tts,audiobook,tests): centralize TTS catalog, harden epub & UI flows 2026-04-06 10:28:00 -06:00
accessibility.spec.ts refactor(documents): migrate from IndexedDB to server-backed storage with caching 2026-02-08 11:15:57 -07:00
delete.spec.ts feat(ui): add five new light themes and redesign settings modal 2026-03-19 10:24:16 -06:00
export.spec.ts test(ui,tests): stabilize audiobook export tests and harden settings modal interactions 2026-04-06 09:59:37 -06:00
folders.spec.ts refactor(documents): migrate from IndexedDB to server-backed storage with caching 2026-02-08 11:15:57 -07:00
global-teardown.ts feat: Refactor server-side document, audiobook, and authentication logic, introduce new client-side APIs and caching, and update related tests. 2026-02-17 19:30:12 -07:00
helpers.ts refactor(tts,audiobook,tests): centralize TTS catalog, harden epub & UI flows 2026-04-06 10:28:00 -06:00
landing-routing.spec.ts feat(auth): implement session gatekeeping and architectural reorganization 2026-02-15 11:12:42 -07:00
navigation.spec.ts test: improve test reliability and adjust timeouts 2026-02-16 01:50:43 -07:00
play.spec.ts fix(config): preserve voice selection when resetting TTS provider settings 2026-03-19 13:41:37 -06:00
upload.spec.ts refactor(documents): migrate from IndexedDB to server-backed storage with caching 2026-02-08 11:15:57 -07:00