Skip to content

Commit

Permalink
fix: make it work with jest esm
Browse files Browse the repository at this point in the history
  • Loading branch information
chihab committed Nov 18, 2024
1 parent 5730c42 commit 4fdd971
Show file tree
Hide file tree
Showing 14 changed files with 23,089 additions and 917 deletions.
1 change: 1 addition & 0 deletions examples/nx-workspace-old/apps/ng-app-cli/jest.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ const jestConfig = {
"@dotenv-run/jest-angular",
{
useESM: true,
stringifyContentPathRegex: "\\.(html|svg)$",
},
],
},
Expand Down
27 changes: 14 additions & 13 deletions examples/nx-workspace/apps/ng-app-cli/jest.config.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,22 @@
export default {
displayName: 'ng-app-cli',
preset: '../../jest.preset.js',
const jestConfig = {
preset: 'jest-preset-angular/presets/defaults-esm',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
coverageDirectory: '../../coverage/apps/ng-app-cli',
cache: false,
testMatch: ['<rootDir>/src/app/**/*.(spec|jest).ts'],
moduleNameMapper: {
'^rxjs(/operators$)?$':
'<rootDir>/../../node_modules/rxjs/dist/bundles/rxjs.umd.js',
tslib: '<rootDir>/../../node_modules/tslib/tslib.es6.mjs',
},
transform: {
'^.+\\.(ts|mjs|js|html)$': [
'jest-preset-angular',
'^.+\\.(ts)$': [
'@dotenv-run/jest-angular',
{
tsconfig: '<rootDir>/tsconfig.spec.json',
useESM: true,
stringifyContentPathRegex: '\\.(html|svg)$',
},
],
},
transformIgnorePatterns: ['node_modules/(?!.*\\.mjs$)'],
snapshotSerializers: [
'jest-preset-angular/build/serializers/no-ng-attributes',
'jest-preset-angular/build/serializers/ng-snapshot',
'jest-preset-angular/build/serializers/html-comment',
],
};

export default jestConfig;
9 changes: 6 additions & 3 deletions examples/nx-workspace/apps/ng-app-cli/project.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"tags": [],
"targets": {
"build": {
"executor": "@angular-devkit/build-angular:application",
"executor": "@ngx-env/builder:application",
"outputs": ["{options.outputPath}"],
"options": {
"outputPath": "dist/apps/ng-app-cli",
Expand All @@ -27,6 +27,9 @@
"prerender": true,
"ssr": {
"entry": "apps/ng-app-cli/server.ts"
},
"ngxEnv": {
"runtime": true
}
},
"configurations": {
Expand Down Expand Up @@ -54,7 +57,7 @@
"defaultConfiguration": "production"
},
"serve": {
"executor": "@angular-devkit/build-angular:dev-server",
"executor": "@ngx-env/builder:dev-server",
"configurations": {
"production": {
"buildTarget": "ng-app-cli:build:production"
Expand All @@ -66,7 +69,7 @@
"defaultConfiguration": "development"
},
"extract-i18n": {
"executor": "@angular-devkit/build-angular:extract-i18n",
"executor": "@ngx-env/builder:extract-i18n",
"options": {
"buildTarget": "ng-app-cli:build"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
<app-nx-welcome></app-nx-welcome>
<router-outlet></router-outlet>
<h1>{{ title }}</h1>
Original file line number Diff line number Diff line change
@@ -1,27 +1,26 @@
import { TestBed } from '@angular/core/testing';
import { AppComponent } from './app.component';
import { NxWelcomeComponent } from './nx-welcome.component';
import { RouterModule } from '@angular/router';

const title = 'test';

describe('AppComponent', () => {
beforeEach(async () => {
await TestBed.configureTestingModule({
imports: [AppComponent, NxWelcomeComponent, RouterModule.forRoot([])],
imports: [AppComponent, RouterModule.forRoot([])],
}).compileComponents();
});

it('should render title', () => {
const fixture = TestBed.createComponent(AppComponent);
fixture.detectChanges();
const compiled = fixture.nativeElement as HTMLElement;
expect(compiled.querySelector('h1')?.textContent).toContain(
'Welcome ng-app-cli'
);
expect(compiled.querySelector('h1')?.textContent).toContain(title);
});

it(`should have as title 'ng-app-cli'`, () => {
const fixture = TestBed.createComponent(AppComponent);
const app = fixture.componentInstance;
expect(app.title).toEqual('ng-app-cli');
expect(app.title).toEqual(title);
});
});
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
import { Component } from '@angular/core';
import { RouterModule } from '@angular/router';
import { NxWelcomeComponent } from './nx-welcome.component';

@Component({
standalone: true,
imports: [NxWelcomeComponent, RouterModule],
selector: 'app-root',
templateUrl: './app.component.html',
styleUrl: './app.component.css',
})
export class AppComponent {
title = 'ng-app-cli';
title = import.meta.env.NODE_ENV;
}
Loading

0 comments on commit 4fdd971

Please sign in to comment.