import type { Context } from "@yaakapp/api"; import { describe, expect, test } from "vite-plus/test"; import { plugin } from "../src"; const ctx = {} as Context; describe("auth-bearer", () => { test("No values", async () => { expect( await plugin.authentication?.onApply(ctx, { values: {}, headers: [], url: "https://yaak.app", method: "POST", contextId: "111", }), ).toEqual({ setHeaders: [{ name: "Authorization", value: "" }] }); }); test("Only token", async () => { expect( await plugin.authentication?.onApply(ctx, { values: { token: "my-token" }, headers: [], url: "https://yaak.app", method: "POST", contextId: "111", }), ).toEqual({ setHeaders: [{ name: "Authorization", value: "my-token" }] }); }); test("Only prefix", async () => { expect( await plugin.authentication?.onApply(ctx, { values: { prefix: "Hello" }, headers: [], url: "https://yaak.app", method: "POST", contextId: "111", }), ).toEqual({ setHeaders: [{ name: "Authorization", value: "Hello" }] }); }); test("Prefix and token", async () => { expect( await plugin.authentication?.onApply(ctx, { values: { prefix: "Hello", token: "my-token" }, headers: [], url: "https://yaak.app", method: "POST", contextId: "111", }), ).toEqual({ setHeaders: [{ name: "Authorization", value: "Hello my-token" }] }); }); test("Extra spaces", async () => { expect( await plugin.authentication?.onApply(ctx, { values: { prefix: "\t Hello ", token: " \nmy-token " }, headers: [], url: "https://yaak.app", method: "POST", contextId: "111", }), ).toEqual({ setHeaders: [{ name: "Authorization", value: "Hello my-token" }] }); }); });