Skip to main content
Glama

MCP Tools for Obsidian

parseTemplateParameters.test.ts1.86 kB
import { describe, expect, test } from "bun:test"; import { parseTemplateParameters } from "./parseTemplateParameters"; import { PromptParameterSchema } from "shared"; describe("parseTemplateParameters", () => { test("returns empty array for content without parameters", () => { const content = "No parameters here"; const result = parseTemplateParameters(content); PromptParameterSchema.array().assert(result); expect(result).toEqual([]); }); test("parses single parameter without description", () => { const content = '<% tp.user.promptArg("name") %>'; const result = parseTemplateParameters(content); PromptParameterSchema.array().assert(result); expect(result).toEqual([{ name: "name" }]); }); test("parses single parameter with description", () => { const content = '<% tp.user.promptArg("name", "Enter your name") %>'; const result = parseTemplateParameters(content); PromptParameterSchema.array().assert(result); expect(result).toEqual([{ name: "name", description: "Enter your name" }]); }); test("parses multiple parameters", () => { const content = ` <% tp.user.promptArg("name", "Enter your name") %> <% tp.user.promptArg("age", "Enter your age") %> `; const result = parseTemplateParameters(content); PromptParameterSchema.array().assert(result); expect(result).toEqual([ { name: "name", description: "Enter your name" }, { name: "age", description: "Enter your age" }, ]); }); test("ignores invalid template syntax", () => { const content = ` <% invalid.syntax %> <% tp.user.promptArg("name", "Enter your name") %> `; const result = parseTemplateParameters(content); PromptParameterSchema.array().assert(result); expect(result).toEqual([{ name: "name", description: "Enter your name" }]); }); });

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/jacksteamdev/obsidian-mcp-tools'

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