import { describe, expect, it } from "@effect/vitest"; import { integration } from "./authoring"; describe("authoring integration builder", () => { it("returns immutable fluent declarations", () => { const base = integration("gmail"); const many = base.array().describe("Inbox accounts"); expect(Object.isFrozen(base)).toBe(true); expect(Object.isFrozen(many)).toBe(true); expect(base).toMatchObject({ kind: "integration", slug: "gmail", mode: "one", }); expect(many).toMatchObject({ kind: "integration", slug: "gmail", mode: "many", description: "Inbox accounts", }); expect(base).not.toBe(many); });});
import { describe, expect, it } from "@effect/vitest";
import { integration } from "./authoring";
describe("authoring integration builder", () => {
it("returns immutable fluent declarations", () => {
const base = integration("gmail");
const many = base.array().describe("Inbox accounts");
expect(Object.isFrozen(base)).toBe(true);
expect(Object.isFrozen(many)).toBe(true);
expect(base).toMatchObject({
kind: "integration",
slug: "gmail",
mode: "one",
});
expect(many).toMatchObject({
kind: "integration",
slug: "gmail",
mode: "many",
description: "Inbox accounts",
});
expect(base).not.toBe(many);
});
});