refactor: extract escapeRegex and validateTagSlugs server utils

Deduplicate tag validation and regex escaping into shared auto-imported
utils. Add tag validation to wiki patch/batch-tag routes. Remove
duplicate tags field from event schema.
This commit is contained in:
Jennie Robinson Faber 2026-04-09 23:51:56 +01:00
parent f585fabf21
commit a516f172fb
11 changed files with 33 additions and 31 deletions

View file

@ -29,6 +29,7 @@ vi.mock('../../../server/utils/schemas.js', () => ({
import Tag from '../../../server/models/tag.js'
import { validateBody } from '../../../server/utils/validateBody.js'
import { validateTagSlugs } from '../../../server/utils/validateTagSlugs.js'
import createHandler from '../../../server/api/admin/events.post.js'
import updateHandler from '../../../server/api/admin/events/[id].put.js'
import { createMockEvent } from '../helpers/createMockEvent.js'
@ -51,8 +52,9 @@ const validEventBody = {
describe('Event tag validation', () => {
beforeEach(() => {
vi.clearAllMocks()
// Override the global validateBody stub (from setup.js) to use our mock
// Override global stubs (from setup.js) to use the real/mocked implementations
globalThis.validateBody = validateBody
globalThis.validateTagSlugs = validateTagSlugs
})
describe('create route (events.post)', () => {