cangku/backend/test/systemConfigVisibility.test.js

24 lines
955 B
JavaScript

'use strict';
const test = require('node:test');
const assert = require('node:assert/strict');
const {
filterPublicSystemConfigs,
isProtectedSystemConfigKey,
} = require('../src/services/systemConfigVisibility');
test('public system configuration excludes service credentials', () => {
const visible = filterPublicSystemConfigs([
{ config_key: 'site_name', config_value: '数据平台' },
{ config_key: 'sidebar_navigation', config_value: '{}' },
{ config_key: 'unrecognized_runtime_config', config_value: 'internal' },
{ config_key: 'selection_similar_products_config', config_value: '{"apiKey":"secret"}' },
{ config_key: 'custom_api_key', config_value: 'secret' },
]);
assert.deepEqual(visible.map((item) => item.config_key), ['site_name', 'sidebar_navigation']);
assert.equal(isProtectedSystemConfigKey('alibaba_1688_image_search_config'), true);
assert.equal(isProtectedSystemConfigKey('site_name'), false);
});