etherpad-lite/src/tests
John McLear c4add0260d
test: regression tests for Settings CJS compat (#7543) (#7551)
#7421 fixed the ESM/CJS interop bug where plugins using
require('ep_etherpad-lite/node/utils/Settings') got an object whose
.toolbar (and every other top-level field) was undefined, crashing
ep_font_color/ep_font_size/ep_plugin_helpers with "Cannot read
properties of undefined (reading 'indexOf')" during pad.html rendering.
That fix landed without a regression test.

Pin the contract: top-level settings fields must be reachable via a
CJS require(), the toolbar must keep its {left, right, timeslider}
shape, and setters on the shim must propagate to the underlying
settings object so reloadSettings() is visible to plugins.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-19 12:12:37 +01:00
..
backend test: regression tests for Settings CJS compat (#7543) (#7551) 2026-04-19 12:12:37 +01:00
backend-new chore: moved first files to esm (#7061) 2025-08-04 19:59:28 +02:00
container Feat/oauth2 (#6281): Added oauth to API paths 2024-03-26 17:11:24 +01:00
frontend Removed deprecated js files. 2024-08-18 19:22:08 +02:00
frontend-new feat: add timeslider line numbers (#7542) 2026-04-19 11:18:54 +01:00
ratelimit Added typescript to etherpad 2024-02-05 21:13:02 +01:00
README.md restructure: move bin/ and tests/ to src/ 2021-02-04 17:15:08 -05:00
settings.json Add creator-owned pad settings defaults (#7545) 2026-04-19 11:13:44 +01:00

About this folder: Tests

Before running the tests, start an Etherpad instance on your machine.

Frontend

To run the frontend tests, point your browser to <yourdomainhere>/tests/frontend

Backend

To run the backend tests, run cd src and then npm test