import { describe, expect, it } from "vitest"; import {
ambiguousTargetError,
ambiguousTargetMessage,
missingTargetError,
missingTargetMessage,
unknownTargetError,
unknownTargetMessage,
} from "./target-errors.js";
describe("target error helpers", () => {
it.each([
{
actual: missingTargetMessage("Slack"),
expected: "Delivering to Slack requires target",
},
{
actual: missingTargetMessage("Slack", "Use channel:C123"),
expected: "Delivering to Slack requires target Use channel:C123",
},
{
actual: missingTargetError("Slack", "Use channel:C123").message,
expected: "Delivering to Slack requires target Use channel:C123",
},
{
actual: missingTargetMessage("Slack", " "),
expected: "Delivering to Slack requires target",
},
{
actual: ambiguousTargetMessage("Discord", "general", " "),
expected: 'Ambiguous target "general" for Discord. Provide a unique name or an explicit id.',
},
{
actual: unknownTargetMessage("Discord", "general", " "),
expected: 'Unknown target "general" for Discord.',
},
{
actual: ambiguousTargetMessage("Discord", "general"),
expected: 'Ambiguous target "general" for Discord. Provide a unique name or an explicit id.',
},
{
actual: ambiguousTargetMessage("Discord", "general", "Use channel:123"),
expected: 'Ambiguous target "general" for Discord. Provide a unique name or an explicit id. Hint: Use channel:123',
},
{
actual: unknownTargetMessage("Discord", "general", "Use channel:123"),
expected: 'Unknown target "general" for Discord. Hint: Use channel:123',
},
{
actual: unknownTargetError("Discord", "general").message,
expected: 'Unknown target "general" for Discord.',
},
{
actual: missingTargetMessage("Slack", " Use channel:C123 "),
expected: "Delivering to Slack requires target Use channel:C123",
},
{
actual: unknownTargetMessage("Discord", "general", " Use channel:123 "),
expected: 'Unknown target "general" for Discord. Hint: Use channel:123',
},
])("formats target error helper output for %j", ({ actual, expected }) => {
expect(actual).toBe(expected);
});
it("includes the hint in ambiguous target errors", () => {
expect(ambiguousTargetError("Discord", "general", "Use channel:123").message).toContain( "Hint: Use channel:123",
);
});
});
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.