| /** |
| * @license |
| * Copyright 2021 The Go Authors. All rights reserved. |
| * Use of this source code is governed by a BSD-style |
| * license that can be found in the LICENSE file. |
| */ |
| |
| let config = { |
| preset: 'ts-jest', |
| globals: { |
| 'ts-jest': { |
| isolatedModules: true, |
| }, |
| }, |
| moduleFileExtensions: ['ts', 'js'], |
| testRunner: 'jest-circus/runner', |
| testPathIgnorePatterns: ['tests/e2e'], |
| }; |
| |
| // When GO_DISCOVERY_E2E_ENVIRONMENT is not set to staging or prod, use the |
| // snapshots in tests/e2e/__snapshots__/ci. Otherwise, use |
| // tests/e2e/__snapshots__/staging. Data in staging and prod are always expected |
| // to be the same. |
| // |
| // eslint-disable-next-line no-undef |
| const env = process.env.GO_DISCOVERY_E2E_ENVIRONMENT; |
| let ignore = 'staging'; |
| if (env === 'staging' || env === 'prod') { |
| ignore = 'ci'; |
| } |
| |
| // eslint-disable-next-line no-undef |
| const e2e = process.argv.some(arg => arg.includes('e2e')); |
| if (e2e) { |
| config = { |
| ...config, |
| setupFilesAfterEnv: ['<rootDir>/tests/e2e/setup.ts'], |
| testEnvironment: '<rootDir>/tests/e2e/test-environment.js', |
| snapshotResolver: '<rootDir>/tests/e2e/snapshotResolver.js', |
| testTimeout: 60000, |
| testPathIgnorePatterns: ['static', 'tests/e2e/__snapshots__/' + ignore], |
| }; |
| } |
| |
| // eslint-disable-next-line no-undef |
| module.exports = config; |