install token now shown in dashboard until install completes.
This commit is contained in:
18 files changed
+1977
-15
No files matched your search
@@ -0,0 +1,37 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { generateBusinessEnv, type BusinessEnvValues } from "../compose-template";
|
||||
|
||||
const baseValues: BusinessEnvValues = {
|
||||
name: "Acme Barbers",
|
||||
domain: "acme.example.com",
|
||||
databaseName: "acme",
|
||||
databaseUser: "acme",
|
||||
databasePassword: "db-password",
|
||||
authSecret: "auth-secret",
|
||||
installationToken: "the-installation-token-value",
|
||||
cronSecret: "cron-secret",
|
||||
};
|
||||
|
||||
describe("generateBusinessEnv — INSTALLATION_TOKEN", () => {
|
||||
it("writes the given installation token into the generated .env", () => {
|
||||
const env = generateBusinessEnv(baseValues);
|
||||
expect(env).toContain('INSTALLATION_TOKEN="the-installation-token-value"');
|
||||
});
|
||||
|
||||
it("never writes the token in a NEXT_PUBLIC_* (build-time-inlined) variable", () => {
|
||||
const env = generateBusinessEnv(baseValues);
|
||||
const publicLines = env.split("\n").filter((line) => line.startsWith("NEXT_PUBLIC_"));
|
||||
for (const line of publicLines) {
|
||||
expect(line).not.toContain("the-installation-token-value");
|
||||
}
|
||||
});
|
||||
|
||||
it("is the only place a business's INSTALLATION_TOKEN gets written — every business gets a distinct token if given one", () => {
|
||||
const envA = generateBusinessEnv({ ...baseValues, installationToken: "token-a" });
|
||||
const envB = generateBusinessEnv({ ...baseValues, domain: "other.example.com", installationToken: "token-b" });
|
||||
expect(envA).toContain('INSTALLATION_TOKEN="token-a"');
|
||||
expect(envB).toContain('INSTALLATION_TOKEN="token-b"');
|
||||
expect(envA).not.toContain("token-b");
|
||||
expect(envB).not.toContain("token-a");
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user