Some checks failed
CD Preprod / Security gate (push) Successful in 29s
CD Preprod / Backend — Lint (push) Successful in 1m5s
CD Preprod / Frontend — Lint & Type-check (push) Successful in 1m14s
CD Preprod / Backend — Unit Tests (push) Successful in 1m8s
CD Preprod / Frontend — Unit Tests (push) Successful in 43s
CD Preprod / Backend — Integration Tests (push) Successful in 46s
CD Preprod / Build Backend (push) Successful in 16m40s
CD Preprod / Build Log Exporter (push) Successful in 1m8s
CD Preprod / Build Frontend (push) Successful in 39m48s
CD Preprod / Image security (${{ matrix.service }}, ${{ matrix.arch }}) (amd64, frontend) (push) Failing after 24s
CD Preprod / Image security (${{ matrix.service }}, ${{ matrix.arch }}) (amd64, backend) (push) Failing after 24s
CD Preprod / Image security (${{ matrix.service }}, ${{ matrix.arch }}) (amd64, log-exporter) (push) Failing after 22s
CD Preprod / Image security (${{ matrix.service }}, ${{ matrix.arch }}) (arm64, backend) (push) Failing after 24s
CD Preprod / Image security (${{ matrix.service }}, ${{ matrix.arch }}) (arm64, frontend) (push) Failing after 24s
CD Preprod / Image security (${{ matrix.service }}, ${{ matrix.arch }}) (arm64, log-exporter) (push) Failing after 21s
CD Preprod / Deploy to Preprod (push) Has been skipped
CD Preprod / Notify Success (push) Has been skipped
CD Preprod / Notify Failure (push) Has been skipped
48 lines
1.7 KiB
TypeScript
48 lines
1.7 KiB
TypeScript
/**
|
|
* Integration test setup
|
|
* Runs before all integration tests
|
|
*/
|
|
|
|
// Set test environment variables
|
|
process.env.NODE_ENV = 'test';
|
|
process.env.TEST_DB_HOST = process.env.TEST_DB_HOST || 'localhost';
|
|
process.env.TEST_DB_PORT = process.env.TEST_DB_PORT || '5432';
|
|
process.env.TEST_DB_USER = process.env.TEST_DB_USER || 'postgres';
|
|
process.env.TEST_DB_PASSWORD = process.env.TEST_DB_PASSWORD || 'postgres';
|
|
process.env.TEST_DB_NAME = process.env.TEST_DB_NAME || 'xpeditis_test';
|
|
|
|
// Enable the repository integration suite using the disposable CI service.
|
|
// Never fall back to DATABASE_* (the application's deployment connection).
|
|
if (!process.env.TRADE_TEST_DATABASE_URL) {
|
|
const database = new URL('postgresql://localhost');
|
|
database.hostname = process.env.TEST_DB_HOST;
|
|
database.port = process.env.TEST_DB_PORT;
|
|
database.username = process.env.TEST_DB_USER;
|
|
database.password = process.env.TEST_DB_PASSWORD;
|
|
database.pathname = `/${process.env.TEST_DB_NAME}`;
|
|
process.env.TRADE_TEST_DATABASE_URL = database.toString();
|
|
}
|
|
|
|
// Redis test configuration
|
|
process.env.REDIS_HOST = process.env.REDIS_HOST || 'localhost';
|
|
process.env.REDIS_PORT = process.env.REDIS_PORT || '6379';
|
|
process.env.REDIS_DB = '1'; // Use DB 1 for tests
|
|
|
|
// Carrier API test configuration
|
|
process.env.MAERSK_API_BASE_URL = 'https://api.maersk.com';
|
|
process.env.MAERSK_API_KEY = 'test-api-key';
|
|
|
|
// Increase test timeout for integration tests
|
|
jest.setTimeout(30000);
|
|
|
|
// Global test helpers
|
|
global.console = {
|
|
...console,
|
|
// Suppress console logs during tests (optional)
|
|
// log: jest.fn(),
|
|
// debug: jest.fn(),
|
|
// info: jest.fn(),
|
|
// warn: jest.fn(),
|
|
error: console.error, // Keep error logs
|
|
};
|