feat: 完成现有小程序接口的全部迁移至新后端

This commit is contained in:
R524809
2026-10-19 13:17:51 +08:00
parent 8827110f2f
commit d30cf25890
148 changed files with 13287 additions and 34 deletions
+52
View File
@@ -164,3 +164,55 @@ test('题型新品窗口与公共资源域名校验,缺省域名不构造七
/QINIU_PUBLIC_DOMAIN/,
);
});
test('七牛空间与路径前缀校验,允许空前缀且不回显非法配置', () => {
const config = getServerConfig({
...env,
QINIU_KEY_PREFIX: 'doodle-assets///',
QINIU_BUCKET: 'doodle-cn',
});
assert.equal(config.qiniuKeyPrefix, 'doodle-assets/');
assert.equal(config.qiniuBucket, 'doodle-cn');
assert.equal(
getServerConfig({ ...env, QINIU_KEY_PREFIX: '' }).qiniuKeyPrefix,
'',
);
for (const value of [
'/absolute',
'/',
'../escape',
'a/../b',
'a//b',
'a\\b',
'a\n',
])
assert.throws(
() => getServerConfig({ ...env, QINIU_KEY_PREFIX: value }),
/QINIU_KEY_PREFIX/,
);
assert.throws(
() => getServerConfig({ ...env, QINIU_BUCKET: 'bad/bucket' }),
/QINIU_BUCKET/,
);
});
test('七牛上传凭据成对校验且不泄漏值,刷新小时限制为 UTC 0~23', () => {
assert.equal(getServerConfig(env).qiniuAk, '');
for (const fields of [
{ QINIU_AK: 'private-ak' },
{ QINIU_SK: 'private-sk' },
{ QINIU_AK: 'a b', QINIU_SK: 'private-sk' },
{ QINIU_REGION: '../escape' },
{ SITE_REFRESH_HOUR_UTC: '24' },
])
assert.throws(
() => getServerConfig({ ...env, ...fields }),
(error: unknown) =>
error instanceof Error && !error.message.includes('private-'),
);
assert.equal(
getServerConfig({ ...env, SITE_REFRESH_HOUR_UTC: '8' })
.siteRefreshHourUtc,
8,
);
});