From f16e46ac643bfdfdb6fe87be99bc07758a82f383 Mon Sep 17 00:00:00 2001 From: JohnDoe6345789 Date: Thu, 25 Dec 2025 19:39:42 +0000 Subject: [PATCH] code: dbal,valid,is (3 files) --- .../src/core/validation/is-valid-date.test.ts | 18 ++++++++++++++++++ .../core/validation/is-valid-semver.test.ts | 14 ++++++++++++++ .../ts/src/core/validation/validate-id.test.ts | 15 ++++++++++----- 3 files changed, 42 insertions(+), 5 deletions(-) create mode 100644 dbal/ts/src/core/validation/is-valid-date.test.ts create mode 100644 dbal/ts/src/core/validation/is-valid-semver.test.ts diff --git a/dbal/ts/src/core/validation/is-valid-date.test.ts b/dbal/ts/src/core/validation/is-valid-date.test.ts new file mode 100644 index 000000000..acc1b7503 --- /dev/null +++ b/dbal/ts/src/core/validation/is-valid-date.test.ts @@ -0,0 +1,18 @@ +import { describe, expect, it } from 'vitest' +import { isValidDate } from './is-valid-date' + +describe('isValidDate', () => { + const validDate = new Date('2024-01-01T00:00:00Z') + const invalidDate = new Date('invalid') + + it.each([ + { value: validDate, expected: true }, + { value: '2024-01-01T00:00:00Z', expected: true }, + { value: 1704067200000, expected: true }, + { value: invalidDate, expected: false }, + { value: 'not-a-date', expected: false }, + { value: {}, expected: false }, + ])('returns $expected for %s', ({ value, expected }) => { + expect(isValidDate(value)).toBe(expected) + }) +}) diff --git a/dbal/ts/src/core/validation/is-valid-semver.test.ts b/dbal/ts/src/core/validation/is-valid-semver.test.ts new file mode 100644 index 000000000..d0bc6dbc1 --- /dev/null +++ b/dbal/ts/src/core/validation/is-valid-semver.test.ts @@ -0,0 +1,14 @@ +import { describe, expect, it } from 'vitest' +import { isValidSemver } from './is-valid-semver' + +describe('isValidSemver', () => { + it.each([ + { version: '1.0.0', expected: true }, + { version: '0.10.2', expected: true }, + { version: '1.0', expected: false }, + { version: '1.0.0-beta', expected: false }, + { version: 'v1.0.0', expected: false }, + ])('returns $expected for $version', ({ version, expected }) => { + expect(isValidSemver(version)).toBe(expected) + }) +}) diff --git a/dbal/ts/src/core/validation/validate-id.test.ts b/dbal/ts/src/core/validation/validate-id.test.ts index 81742b9e7..1c4b2e700 100644 --- a/dbal/ts/src/core/validation/validate-id.test.ts +++ b/dbal/ts/src/core/validation/validate-id.test.ts @@ -1,12 +1,17 @@ -import { describe, it, expect } from 'vitest' +import { describe, expect, it } from 'vitest' import { validateId } from './validate-id' describe('validateId', () => { it.each([ - { name: 'valid', id: 'abc123', expected: [] }, - { name: 'empty', id: '', expected: ['ID cannot be empty'] }, - { name: 'whitespace', id: ' ', expected: ['ID cannot be empty'] }, - ])('returns errors for $name', ({ id, expected }) => { + { id: '550e8400-e29b-41d4-a716-446655440000', expected: [] }, + ])('accepts valid id $id', ({ id, expected }) => { expect(validateId(id)).toEqual(expected) }) + + it.each([ + { id: '', message: 'ID cannot be empty' }, + { id: 'not-a-uuid', message: 'ID must be a valid UUID' }, + ])('rejects invalid id $id', ({ id, message }) => { + expect(validateId(id)).toContain(message) + }) })