Quantcast
Channel: Ionic Forum - Latest posts
Viewing all articles
Browse latest Browse all 230107

Setup Jest in Angular 14 + Ionic 6 project

$
0
0

i’m using this configuration:

globalThis.ngJest = {
    skipNgcc: true,
    tsconfig: 'tsconfig.spec.json', // this is the project root tsconfig
};

/** @type {import('@jest/types').Config.InitialOptions} */
module.exports = {
    preset: 'jest-preset-angular',
    testEnvironment: 'jsdom',
    setupFilesAfterEnv: [ '<rootDir>/src/setup-jest.ts' ],
    // setupFilesAfterEnv: [ '<rootDir>/node_modules/jest-preset-angular/build/setup-jest.js' ],
    transform: {
        '^.+\\.ts$': 'ts-jest', // Only transform .ts files
    },
    transformIgnorePatterns: [
        '/node_modules/(?!flat)/', // Exclude modules except 'flat' from transformation
    ],
    moduleNameMapper: {
        '\\.(css|scss)$': 'identity-obj-proxy',
        '^@/(.*)$': '<rootDir>/src/$1',
        '^app/(.*)$': '<rootDir>/src/app/$1',
        '^src/(.*)$': '<rootDir>/src/$1',
        '^shared/(.*)$': '<rootDir>/../shared/$1',
        '^mockServices/(.*)$': '<rootDir>/mockServices/$1',
        '^@app/(.*)$': '<rootDir>/src/app/$1',
        '^@environments/(.*)$': '<rootDir>/src/environments/$1',
    },
    moduleDirectories: [ 'node_modules', 'src' ],
    fakeTimers: {
        enableGlobally: true,
    }
};

It seems fine even though the tests… it’s quite more complicated than using Karma, pity they deprecated it :slightly_frowning_face:


Viewing all articles
Browse latest Browse all 230107

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>