24 lines
956 B
JavaScript
24 lines
956 B
JavaScript
// 回归测试:非生产环境下,stub 模式仍返回 devCode(保证本地开发/测试可用)。
|
|
// 与 altauth-failclose.test.js 是同一逻辑的另一分支,node --test 每个文件独立子进程,
|
|
// 故此处 NODE_ENV 不会与那个文件互相污染。
|
|
process.env.NODE_ENV = 'development';
|
|
process.env.EMAIL_PROVIDER = 'stub';
|
|
process.env.SMS_PROVIDER = 'stub';
|
|
|
|
import { test } from 'node:test';
|
|
import assert from 'node:assert/strict';
|
|
|
|
const { sendResetCode, sendSmsCode } = await import('../src/services/altauth.js');
|
|
|
|
test('dev: 忘记密码 stub 返回 devCode(本地可测)', async () => {
|
|
const r = await sendResetCode('dev@example.com');
|
|
assert.equal(r.sent, true);
|
|
assert.match(String(r.devCode), /^\d{6}$/);
|
|
});
|
|
|
|
test('dev: 短信 stub 返回 devCode(本地可测)', async () => {
|
|
const r = await sendSmsCode('13900139000');
|
|
assert.equal(r.sent, true);
|
|
assert.match(String(r.devCode), /^\d{6}$/);
|
|
});
|