Skip to main content
Glama

Simple MCP Server

instanceof.test.ts1.15 kB
// @ts-ignore TS6133 import { expect, test } from "vitest"; import * as z from "zod/v3"; import { util } from "../helpers/util.js"; test("instanceof", async () => { class Test {} class Subtest extends Test {} abstract class AbstractBar { constructor(public val: string) {} } class Bar extends AbstractBar {} const TestSchema = z.instanceof(Test); const SubtestSchema = z.instanceof(Subtest); const AbstractSchema = z.instanceof(AbstractBar); const BarSchema = z.instanceof(Bar); TestSchema.parse(new Test()); TestSchema.parse(new Subtest()); SubtestSchema.parse(new Subtest()); AbstractSchema.parse(new Bar("asdf")); const bar = BarSchema.parse(new Bar("asdf")); expect(bar.val).toEqual("asdf"); await expect(() => SubtestSchema.parse(new Test())).toThrow(/Input not instance of Subtest/); await expect(() => TestSchema.parse(12)).toThrow(/Input not instance of Test/); util.assertEqual<Test, z.infer<typeof TestSchema>>(true); }); test("instanceof fatal", () => { const schema = z.instanceof(Date).refine((d) => d.toString()); const res = schema.safeParse(null); expect(res.success).toBe(false); });

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/shaleen-wonder-ent/simple-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server