mirror of
https://github.com/certd/certd.git
synced 2026-07-03 01:57:32 +08:00
49 lines
1.6 KiB
TypeScript
49 lines
1.6 KiB
TypeScript
import assert from "assert";
|
|
import { buildAcmeAccountAccessName, buildAcmeAccountSetting, maskAcmeAccountEmail, parseLegacyAcmeStorageKey } from "./legacy-acme-account-access-fix.js";
|
|
|
|
describe("LegacyAcmeAccountAccessFix", () => {
|
|
it("parses legacy storage account key", () => {
|
|
assert.deepEqual(parseLegacyAcmeStorageKey("acme.config.letsencrypt.user@example.com"), {
|
|
caType: "letsencrypt",
|
|
email: "user@example.com",
|
|
});
|
|
});
|
|
|
|
it("skips EAB access cache keys", () => {
|
|
assert.equal(parseLegacyAcmeStorageKey("acme.config.google.access.12"), null);
|
|
});
|
|
|
|
it("builds acme account access setting from legacy config", () => {
|
|
const setting = buildAcmeAccountSetting({
|
|
caType: "letsencrypt",
|
|
email: "user@example.com",
|
|
config: {
|
|
key: "private-key",
|
|
accountUrl: "https://example.com/acct/1",
|
|
},
|
|
});
|
|
|
|
assert.equal(setting.caType, "letsencrypt");
|
|
const account = JSON.parse(setting.account);
|
|
assert.equal(account.accountKey, "private-key");
|
|
assert.equal(account.accountUri, "https://example.com/acct/1");
|
|
});
|
|
|
|
it("builds masked acme account access name", () => {
|
|
assert.equal(maskAcmeAccountEmail("xiaojunnuo@qq.com"), "xi*******qq.com");
|
|
assert.equal(buildAcmeAccountAccessName("zerossl", "xiaojunnuo@qq.com"), "zerossl-acme-xi*******qq.com");
|
|
});
|
|
|
|
it("skips incomplete legacy config", () => {
|
|
const setting = buildAcmeAccountSetting({
|
|
caType: "letsencrypt",
|
|
email: "user@example.com",
|
|
config: {
|
|
key: "private-key",
|
|
},
|
|
});
|
|
|
|
assert.equal(setting, null);
|
|
});
|
|
});
|