Files
zod-backend/src/core/module-options/config-options.spec.ts
Oracle Public Cloud User 05872b5170 feat:mvp1 initial commit
2024-11-21 06:07:08 +00:00

41 lines
1.4 KiB
TypeScript

// config-options.spec.ts
import { buildConfigOptions } from './config-options';
import * as path from 'path';
import { ConfigModuleOptions } from '@nestjs/config';
import { Environment } from '../enums';
describe('buildConfigOptions', () => {
const baseConfigDir = path.join(__dirname, '..', '..', 'config');
it('should return global config options with .env and development environment file path', () => {
process.env.NODE_ENV = Environment.DEV;
const configOptions: ConfigModuleOptions = buildConfigOptions();
expect(configOptions.isGlobal).toBe(true);
expect(configOptions.envFilePath).toEqual(['.env', path.join(baseConfigDir, Environment.DEV + '.env')]);
});
it('should return global config options with .env and production environment file path', () => {
process.env.NODE_ENV = Environment.PROD;
const configOptions: ConfigModuleOptions = buildConfigOptions();
expect(configOptions.isGlobal).toBe(true);
expect(configOptions.envFilePath).toEqual(['.env', path.join(baseConfigDir, Environment.PROD + '.env')]);
});
it('should use default env file if NODE_ENV is not set', () => {
delete process.env.NODE_ENV;
const configOptions: ConfigModuleOptions = buildConfigOptions();
expect(configOptions.isGlobal).toBe(true);
expect(configOptions.envFilePath).toEqual([
'.env',
path.join(baseConfigDir, 'undefined.env'), // This simulates no NODE_ENV
]);
});
});