feat: 支持 Cloudflare Temp Email 固定子域

This commit is contained in:
qqqasdwx
2026-05-23 10:15:13 +00:00
parent 5f73c505a0
commit 7fe46cee31
18 changed files with 424 additions and 27 deletions
+34
View File
@@ -2,12 +2,14 @@ const test = require('node:test');
const assert = require('node:assert/strict');
const {
buildCloudflareTempEmailEffectiveDomain,
buildCloudflareTempEmailHeaders,
getCloudflareTempEmailAddressFromResponse,
normalizeCloudflareTempEmailBaseUrl,
normalizeCloudflareTempEmailDomain,
normalizeCloudflareTempEmailDomains,
normalizeCloudflareTempEmailMailApiMessages,
normalizeCloudflareTempEmailSubdomainPrefix,
} = require('../cloudflare-temp-email-utils.js');
const {
pickVerificationMessageWithTimeFallback,
@@ -34,6 +36,38 @@ test('normalizeCloudflareTempEmailDomain and domains de-duplicate valid entries'
);
});
test('cloudflare temp email fixed subdomain helpers validate one label and build effective domain', () => {
assert.equal(normalizeCloudflareTempEmailSubdomainPrefix(' Team-1 '), 'team-1');
assert.equal(normalizeCloudflareTempEmailSubdomainPrefix('a.example'), '');
assert.equal(normalizeCloudflareTempEmailSubdomainPrefix('-team'), '');
assert.equal(normalizeCloudflareTempEmailSubdomainPrefix('team_1'), '');
assert.equal(
buildCloudflareTempEmailEffectiveDomain({
domain: 'Mail.Example.com',
useFixedSubdomain: true,
subdomainPrefix: 'Team',
}),
'team.mail.example.com'
);
assert.equal(
buildCloudflareTempEmailEffectiveDomain({
domain: 'mail.example.com',
useFixedSubdomain: false,
subdomainPrefix: 'team',
}),
'mail.example.com'
);
assert.equal(
buildCloudflareTempEmailEffectiveDomain({
domain: 'mail.example.com',
useFixedSubdomain: true,
subdomainPrefix: '',
}),
''
);
});
test('buildCloudflareTempEmailHeaders includes auth headers and content type when needed', () => {
assert.deepEqual(
buildCloudflareTempEmailHeaders(