feat: 重构优化2925邮箱和gmail邮箱逻辑

This commit is contained in:
QLHazyCoder
2026-04-17 11:33:02 +08:00
parent 6bd00e9129
commit 511cfcfcc7
10 changed files with 711 additions and 41 deletions
+28
View File
@@ -0,0 +1,28 @@
const test = require('node:test');
const assert = require('node:assert/strict');
const fs = require('node:fs');
const source = fs.readFileSync('managed-alias-utils.js', 'utf8');
const scope = {};
const api = new Function('self', `${source}; return self.MultiPageManagedAliasUtils;`)(scope);
test('managed alias utils build gmail +tag email from full base email', () => {
assert.equal(
api.buildManagedAliasEmail('gmail', 'demo@gmail.com', 'riverstone'),
'demo+riverstone@gmail.com'
);
});
test('managed alias utils build 2925 email from full base email', () => {
assert.equal(
api.buildManagedAliasEmail('2925', 'demo@2925.com', '123456'),
'demo123456@2925.com'
);
});
test('managed alias utils validate provider email with or without configured base email', () => {
assert.equal(api.isManagedAliasEmail('demo+riverstone@gmail.com', 'gmail', 'demo@gmail.com'), true);
assert.equal(api.isManagedAliasEmail('demo123456@2925.com', '2925', 'demo@2925.com'), true);
assert.equal(api.isManagedAliasEmail('manual@gmail.com', 'gmail', ''), true);
assert.equal(api.isManagedAliasEmail('manual@qq.com', 'gmail', ''), false);
});