import { describe, it, expect } from "vitest";
import { VOCAB } from "./vocab.js";

describe("VOCAB", () => {
  it("maps company to Workspace", () => {
    expect(VOCAB.company).toBe("Workspace");
  });
  it("maps companies to Workspaces", () => {
    expect(VOCAB.companies).toBe("Workspaces");
  });
  it("maps ceo to Project Manager", () => {
    expect(VOCAB.ceo).toBe("Project Manager");
  });
  it("maps board to Owner", () => {
    expect(VOCAB.board).toBe("Owner");
  });
  it("maps hire to Add", () => {
    expect(VOCAB.hire).toBe("Add");
  });
  it("maps fire to Remove", () => {
    expect(VOCAB.fire).toBe("Remove");
  });
  it("has appName as Nexus", () => {
    expect(VOCAB.appName).toBe("Nexus");
  });
  it("has a non-empty tagline", () => {
    expect(VOCAB.tagline).toBe("Open-source orchestration for your agents");
  });
  it("all values are non-empty strings", () => {
    for (const [key, value] of Object.entries(VOCAB)) {
      expect(typeof value, `key "${key}" should be a string`).toBe("string");
      expect(value.length, `key "${key}" should be non-empty`).toBeGreaterThan(0);
    }
  });
});
