Files

81 lines
4.3 KiB
JavaScript
Raw Permalink Normal View History

const assert = require('node:assert/strict')
const test = require('node:test')
const { parseEnvironment, resolveMilvusCollection, buildAcceptanceEnvironment } = require('./workbench_acceptance_runtime.cjs')
test('defaults to Milvus with separate acceptance storage and credentials', () => {
const production = Object.freeze({
RETRIEVE_DRIVER: 'postgres', MILVUS_COLLECTION: 'production',
DB_NAME: 'production_db', JWT_SECRET: 'production-secret', MILVUS_ADDRESS: 'milvus:19530',
})
const env = buildAcceptanceEnvironment(production, {}, {}, 'acceptance-secret')
assert.equal(env.RETRIEVE_DRIVER, 'milvus')
assert.equal(env.MILVUS_COLLECTION, 'yawan_acceptance_hybrid')
assert.equal(env.MILVUS_ADDRESS, production.MILVUS_ADDRESS)
assert.equal(env.DB_NAME, 'yawan_native_acceptance_20260915')
assert.equal(env.REDIS_DB, '14')
assert.equal(env.JWT_SECRET, 'acceptance-secret')
assert.equal(env.DISABLE_REGISTRATION, 'true')
assert.equal(production.MILVUS_COLLECTION, 'production')
})
test('accepts a separate collection and explicit retrieve driver override', () => {
const env = buildAcceptanceEnvironment({ MILVUS_COLLECTION: 'production' }, {}, {
ACCEPTANCE_MILVUS_COLLECTION: 'custom_acceptance', ACCEPTANCE_RETRIEVE_DRIVER: 'postgres',
}, 'test-secret')
assert.equal(env.MILVUS_COLLECTION, 'custom_acceptance')
assert.equal(env.RETRIEVE_DRIVER, 'postgres')
})
test('rejects the production prefix and all dimension-specific names', () => {
for (const value of ['production', 'production_768', 'production_1536', 'production_0001']) {
assert.throws(() => resolveMilvusCollection('production', value), /isolated/)
}
assert.throws(() => resolveMilvusCollection('production_768', 'production'), /isolated/)
assert.equal(resolveMilvusCollection('production', 'production_acceptance'), 'production_acceptance')
})
test('also protects the implicit production prefix and a conflicting default', () => {
assert.throws(() => resolveMilvusCollection(undefined, 'weknora_embeddings'), /isolated/)
assert.throws(() => resolveMilvusCollection('', 'weknora_embeddings_1024'), /isolated/)
assert.throws(() => resolveMilvusCollection('yawan_acceptance_hybrid'), /isolated/)
})
test('rejects invalid collection values without echoing their contents', () => {
const value = 'invalid\nJWT_SECRET=private-test-secret'
assert.throws(() => resolveMilvusCollection('production', value), error => {
assert.match(error.message, /valid Milvus collection prefix/)
assert.ok(!error.message.includes(value))
assert.ok(!error.message.includes('private-test-secret'))
return true
})
})
test('reuses the runtime JWT secret across restarts while refreshing production settings', () => {
const previous = parseEnvironment('# Runtime environment\r\nJWT_SECRET=previous-secret==\r\nRETRIEVE_DRIVER=postgres\r\nMILVUS_COLLECTION=production\r\n')
const first = buildAcceptanceEnvironment({ MILVUS_ADDRESS: 'new-host:19530' }, previous, {}, 'unused-secret')
const restart = buildAcceptanceEnvironment({}, first, {}, 'another-unused-secret')
assert.equal(first.JWT_SECRET, 'previous-secret==')
assert.equal(restart.JWT_SECRET, first.JWT_SECRET)
assert.equal(first.MILVUS_ADDRESS, 'new-host:19530')
assert.equal(first.RETRIEVE_DRIVER, 'milvus')
assert.equal(first.MILVUS_COLLECTION, 'yawan_acceptance_hybrid')
})
test('never falls back to the production JWT secret', () => {
assert.throws(() => buildAcceptanceEnvironment({ JWT_SECRET: 'production-secret' }), /first start/)
assert.equal(buildAcceptanceEnvironment({ JWT_SECRET: 'production-secret' }, { JWT_SECRET: '' }, {}, 'new-secret').JWT_SECRET, 'new-secret')
})
test('admin bootstrap is acceptance-specific and persists across restarts', () => {
const production = { WEKNORA_BOOTSTRAP_SYSTEM_ADMIN_EMAIL: 'production@example.test', DISABLE_REGISTRATION: 'false' }
const initial = buildAcceptanceEnvironment(production, {}, {}, 'secret')
assert.equal(initial.WEKNORA_BOOTSTRAP_SYSTEM_ADMIN_EMAIL, '')
assert.equal(initial.DISABLE_REGISTRATION, 'true')
const configured = buildAcceptanceEnvironment(production, initial, {
ACCEPTANCE_BOOTSTRAP_SYSTEM_ADMIN_EMAIL: 'acceptance@example.test',
})
const restarted = buildAcceptanceEnvironment(production, configured)
assert.equal(restarted.WEKNORA_BOOTSTRAP_SYSTEM_ADMIN_EMAIL, 'acceptance@example.test')
assert.equal(restarted.DISABLE_REGISTRATION, 'true')
})