File tree Expand file tree Collapse file tree 6 files changed +26
-13
lines changed
projects/testing-library/src/lib Expand file tree Collapse file tree 6 files changed +26
-13
lines changed Original file line number Diff line number Diff line change 3434 "@angular/platform-browser" : " ^8.0.0" ,
3535 "@angular/platform-browser-dynamic" : " ^8.0.0" ,
3636 "@angular/router" : " ^8.0.0" ,
37+ "@ngrx/store" : " ^8.0.0-rc.0" ,
3738 "@phenomnomnominal/tsquery" : " ^3.0.0" ,
3839 "@testing-library/dom" : " ^5.0.1" ,
3940 "core-js" : " ^3.1.3" ,
Original file line number Diff line number Diff line change @@ -32,15 +32,18 @@ export async function render<T>(
3232 TestBed . configureTestingModule ( {
3333 declarations : [ ...declarations , ...componentDeclarations ] ,
3434 imports : [ ...imports ] ,
35+ providers : [ ...providers ] ,
3536 schemas : [ ...schemas ] ,
3637 } ) ;
3738
3839 if ( providers ) {
3940 // override services this way to have the service overridden at the component level
40- providers . forEach ( p => {
41- const { provide, ...provider } = p ;
42- TestBed . overrideProvider ( provide , provider ) ;
43- } ) ;
41+ providers
42+ . reduce ( ( acc , provider ) => acc . concat ( provider ) , [ ] )
43+ . forEach ( p => {
44+ const { provide, ...provider } = p ;
45+ TestBed . overrideProvider ( provide , provider ) ;
46+ } ) ;
4447 }
4548
4649 const fixture = isTemplate
Original file line number Diff line number Diff line change 11import { AppComponent } from './app.component' ;
22import { render } from '@testing-library/angular' ;
33import { configureJestSetup } from '@testing-library/angular/jest-utils' ;
4+ import { provideMockStore } from '@ngrx/store/testing' ;
45
56configureJestSetup ( ) ;
67
78test ( `matches snapshot` , async ( ) => {
89 const { container } = await render ( '<app-root></app-root>' , {
910 declarations : [ AppComponent ] ,
11+ providers : [ provideMockStore ( ) ] ,
1012 } ) ;
1113 expect ( container ) . toMatchSnapshot ( ) ;
1214} ) ;
1315
1416test ( `should have a title` , async ( ) => {
1517 const { getByText } = await render ( '<app-root></app-root>' , {
1618 declarations : [ AppComponent ] ,
19+ providers : [ provideMockStore ( ) ] ,
1720 } ) ;
1821 expect ( getByText ( 'Welcome to app!' ) ) . toBeDefined ( ) ;
1922} ) ;
2023
2124test ( `should render title in a h1 tag` , async ( ) => {
2225 const { container } = await render ( '<app-root></app-root>' , {
2326 declarations : [ AppComponent ] ,
27+ providers : [ provideMockStore ( ) ] ,
2428 } ) ;
2529 expect ( container . querySelector ( 'h1' ) . textContent ) . toContain ( 'Welcome to app!' ) ;
2630} ) ;
Original file line number Diff line number Diff line change 11import { Component } from '@angular/core' ;
2+ import { Store } from '@ngrx/store' ;
23
34@Component ( {
45 selector : 'app-root' ,
56 templateUrl : './app.component.html' ,
6- styleUrls : [ './app.component.css' ]
7+ styleUrls : [ './app.component.css' ] ,
78} )
89export class AppComponent {
910 title = 'app' ;
11+
12+ constructor ( private store : Store < any > ) { }
1013}
Original file line number Diff line number Diff line change @@ -2,15 +2,12 @@ import { BrowserModule } from '@angular/platform-browser';
22import { NgModule } from '@angular/core' ;
33
44import { AppComponent } from './app.component' ;
5+ import { StoreModule } from '@ngrx/store' ;
56
67@NgModule ( {
7- declarations : [
8- AppComponent
9- ] ,
10- imports : [
11- BrowserModule
12- ] ,
8+ declarations : [ AppComponent ] ,
9+ imports : [ BrowserModule , StoreModule . forRoot ( { } ) ] ,
1310 providers : [ ] ,
14- bootstrap : [ AppComponent ]
11+ bootstrap : [ AppComponent ] ,
1512} )
16- export class AppModule { }
13+ export class AppModule { }
Original file line number Diff line number Diff line change 511511 call-me-maybe "^1.0.1"
512512 glob-to-regexp "^0.3.0"
513513
514+ " @ngrx/store@^8.0.0-rc.0 " :
515+ version "8.0.0-rc.0"
516+ resolved "https://registry.yarnpkg.com/@ngrx/store/-/store-8.0.0-rc.0.tgz#3ec0ca8986fb3cb2b246cab0c851833a21f9a134"
517+ integrity sha512-TL+2BERGH4DET8sIW1D02wkmKxlnVXWezm1OkQJd2Q/6h6MwZBd8SeDpuiEIUHr2/1BPUyPNe1bj+vemeiwWrw==
518+
514519" @ngtools/json-schema@^1.1.0 " :
515520 version "1.1.0"
516521 resolved "https://registry.yarnpkg.com/@ngtools/json-schema/-/json-schema-1.1.0.tgz#c3a0c544d62392acc2813a42c8a0dc6f58f86922"
You can’t perform that action at this time.
0 commit comments