import { defineConfig } from 'vitest/config';
import base from './vitest.config';
import { assertLaneEnv, laneIncludePatterns } from './scripts/validate-test-lanes.mjs';
import { assertSafeTestDbUrl } from './tests/helpers/db-guard';

assertLaneEnv('oracle');
if (process.env.DATABASE_URL) {
  assertSafeTestDbUrl(process.env.DATABASE_URL, { envVar: 'DATABASE_URL' });
}
if (process.env.ORACLE_DATABASE_URL) {
  assertSafeTestDbUrl(process.env.ORACLE_DATABASE_URL, { envVar: 'ORACLE_DATABASE_URL' });
  if (process.env.ORACLE_DATABASE_URL === process.env.DATABASE_URL) {
    throw new Error('ORACLE_DATABASE_URL must not equal DATABASE_URL in oracle lane');
  }
}
export default defineConfig({
  ...base,
  test: {
    ...base.test,
    environment: 'node',
    include: laneIncludePatterns('oracle'),
    fileParallelism: false,
    sequence: { concurrent: false },
  },
});
