UNPKG

valia

Version:

A runtime data validator in TypeScript with advanced type inference, built-in validation functions, and seamless integration for server and client environments.

28 lines (24 loc) 1.01 kB
import { describe, it } from "node:test"; import assert from "node:assert"; import { Schema } from "../../../dist/index.js"; describe("Schema format: 'tuple'", () => { it("basic", () => { const schema_tuple_empty = new Schema({ type: "tuple", tuple: [] }); const schema_tuple_used = new Schema({ type: "tuple", tuple: [{ type: "string" }, { type: "number" }] }); assert.strictEqual(schema_tuple_empty.validate({}), false); assert.strictEqual(schema_tuple_empty.validate("foo"), false); assert.strictEqual(schema_tuple_empty.validate(new Date()), false); assert.strictEqual(schema_tuple_empty.validate(new Uint16Array()), false); assert.strictEqual(schema_tuple_empty.validate([]), true); assert.strictEqual(schema_tuple_used.validate([]), false); assert.strictEqual(schema_tuple_used.validate(["foo"]), false); assert.strictEqual(schema_tuple_used.validate(["foo", 667, "bar"]), false); assert.strictEqual(schema_tuple_used.validate(["foo", 667]), true); }); });