import { describe, expect, test } from "bun:test"; import deriveWireguardInterfaceName from "./derive-wireguard-interface-name"; describe("deriveWireguardInterfaceName", () => { test("derives interface name from host id", () => { expect(deriveWireguardInterfaceName({ host_id: 0 })).toBe("wgui0"); expect(deriveWireguardInterfaceName({ host_id: 1 })).toBe("wgui1"); expect(deriveWireguardInterfaceName({ host_id: 7 })).toBe("wgui7"); }); test("uses a project-scoped prefix, never stock wgN", () => { expect(deriveWireguardInterfaceName({ host_id: 0 })).not.toBe("wg0"); expect(deriveWireguardInterfaceName({ host_id: 1 })).not.toBe("wg1"); }); test("prefix matches wg-quick interface name requirements (<= 15 chars)", () => { expect(deriveWireguardInterfaceName({ host_id: 0 }).length).toBeLessThanOrEqual( 15, ); }); });