I clonned `mean-stack-angular6-crud-example`, then `npm install` U also have it? ``` (node:41415) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead 10% building modules 3/3 modules 0 active26 07 2018 00:30:45.425:WARN [karma]: No captured browser, open http://localhost:9876/ 26 07 2018 00:30:45.437:INFO [karma]: Karma v1.7.1 server started at http://0.0.0.0:9876/ 26 07 2018 00:30:45.438:INFO [launcher]: Launching browser Chrome with unlimited concurrency 10% building modules 3/4 modules 1 active …ar6-crud-example/src sync /\.spec\.ts$/26 07 2018 00:30:45.443:INFO [launcher]: Starting browser Chrome 26 07 2018 00:30:50.400:WARN [karma]: No captured browser, open http://localhost:9876/ 26 07 2018 00:30:50.471:INFO [Chrome 67.0.3396 (Mac OS X 10.13.6)]: Connected on socket Bjn5wQgyqd8enBneAAAA with id 71158845 Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 0 of 8 SUCCESS (0 secs / 0 secs) Chrome 67.0.3396 (Mac OS X 10.13.6) ApiService should be created FAILED Error: StaticInjectorError(DynamicTestModule)[ApiService -> HttpClient]: StaticInjectorError(Platform: core)[ApiService -> HttpClient]: NullInjectorError: No provider for HttpClient! at NullInjector.push../node_modules/@angular/core/fesm5/core.js.NullInjector.get node_modules/@angular/core/fesm5/core.js:979:1) at resolveToken node_modules/@angular/core/fesm5/core.js:1232:1) at tryResolveToken node_modules/@angular/core/fesm5/core.js:1182:1) at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get node_modules/@angular/core/fesm5/core.js:1077:1) at resolveToken node_modules/@angular/core/fesm5/core.js:1232:1) at tryResolveToken node_modules/@angular/core/fesm5/core.js:1182:1) at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get node_modules/@angular/core/fesm5/core.js:1077:1) at resolveNgModuleDep node_modules/@angular/core/fesm5/core.js:9217:1) at _createClass node_modules/@angular/core/fesm5/core.js:9262:1) Chrome 67.0.3396 (Mac OS X 10.13.6) ApiService should be created FAILED Error: StaticInjectorError(DynamicTestModule)[ApiService -> HttpClient]: StaticInjectorError(Platform: core)[ApiService -> HttpClient]: NullInjectorError: No provider for HttpClient! at NullInjector.push../node_modules/@angular/core/fesm5/core.js.NullInjector.get node_modules/@angular/core/fesm5/core.js:979:1) at resolveToken node_modules/@angular/core/fesm5/core.js:1232:1) at tryResolveToken node_modules/@angular/core/fesm5/core.js:1182:1) at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get node_modules/@angular/core/fesm5/core.js:1077:1) at resolveToken node_modules/@angular/core/fesm5/core.js:1232:1) at tryResolveToken node_modules/@angular/core/fesm5/core.js:1182:1) at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get node_modules/@angular/core/fesm5/core.js:1077:1) at resolveNgModuleDep node_modules/@angular/core/fesm5/core.js:9217:1) at _createClass node_modules/@angular/core/fesm5/core.js:9262:1) at _createProviderInstance$1 node_modules/@angular/core/fesm5/core.js:9234:1) Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 1 of 8 (1 FAILED) (0 secs / 0.054 secs) Chrome 67.0.3396 (Mac OS X 10.13.6) ApiService should be created FAILED Error: StaticInjectorError(DynamicTestModule)[ApiService -> HttpClient]: StaticInjectorError(Platform: core)[ApiService -> HttpClient]: NullInjectorError: No provider for HttpClient! at NullInjector.push../node_modules/@angular/core/fesm5/core.js.NullInjector.get node_modules/@angular/core/fesm5/core.js:979:1) at resolveToken node_modules/@angular/core/fesm5/core.js:1232:1) at tryResolveToken node_modules/@angular/core/fesm5/core.js:1182:1) at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get node_modules/@angular/core/fesm5/core.js:1077:1) at resolveToken node_modules/@angular/core/fesm5/core.js:1232:1) at tryResolveToken node_modules/@angular/core/fesm5/core.js:1182:1) at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get node_modules/@angular/core/fesm5/core.js:1077:1) at resolveNgModuleDep node_modules/@angular/core/fesm5/core.js:9217:1) at _createClass node_modules/@angular/core/fesm5/core.js:9262:1) at _createProviderInstance$1 node_modules/@angular/core/fesm5/core.js:9234:1) Chrome 67.0.3396 (Mac OS X 10.13.6) AppComponent should create the app FAILED 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) Chrome 67.0.3396 (Mac OS X 10.13.6) AppComponent should create the app FAILED 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 2 of 8 (2 FAILED) (0 secs / 0.094 secs) Chrome 67.0.3396 (Mac OS X 10.13.6) AppComponent should create the app FAILED 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Chrome 67.0.3396 (Mac OS X 10.13.6) AppComponent should have as title 'app' FAILED 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) Chrome 67.0.3396 (Mac OS X 10.13.6) AppComponent should have as title 'app' FAILED 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 3 of 8 (3 FAILED) (0 secs / 0.112 secs) Chrome 67.0.3396 (Mac OS X 10.13.6) AppComponent should have as title 'app' FAILED 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Chrome 67.0.3396 (Mac OS X 10.13.6) AppComponent should render title in a h1 tag FAILED 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) Chrome 67.0.3396 (Mac OS X 10.13.6) AppComponent should render title in a h1 tag FAILED 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 4 of 8 (4 FAILED) (0 secs / 0.13 secs) Chrome 67.0.3396 (Mac OS X 10.13.6) AppComponent should render title in a h1 tag FAILED 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<router-outlet></router-outlet> "): ng:///DynamicTestModule/AppComponent.html@0:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Chrome 67.0.3396 (Mac OS X 10.13.6) BookCreateComponent should create FAILED Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit"): ng:///DynamicTestModule/BookCreateComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookCreateComponent.html@1:65 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookCreateComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookCreateComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookCreateComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookCreateComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookCreateComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookCreateComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookCreateComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookCreateComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookCreateComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookCreateComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookCreateComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookCreateComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookCreateComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookCreateComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookCreateComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookCreateComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookCreateComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookCreateComponent.html@47:89 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit"): ng:///DynamicTestModule/BookCreateComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookCreateComponent.html@1:65 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookCreateComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookCreateComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookCreateComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookCreateComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookCreateComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookCreateComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookCreateComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookCreateComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookCreateComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookCreateComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookCreateComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookCreateComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookCreateComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookCreateComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookCreateComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookCreateComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookCreateComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookCreateComponent.html@47:89 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book-create/book-create.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) Chrome 67.0.3396 (Mac OS X 10.13.6) BookCreateComponent should create FAILED Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit"): ng:///DynamicTestModule/BookCreateComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookCreateComponent.html@1:65 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookCreateComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookCreateComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookCreateComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookCreateComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookCreateComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookCreateComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookCreateComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookCreateComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookCreateComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookCreateComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookCreateComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookCreateComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookCreateComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookCreateComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookCreateComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookCreateComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookCreateComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookCreateComponent.html@47:89 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit"): ng:///DynamicTestModule/BookCreateComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookCreateComponent.html@1:65 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookCreateComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookCreateComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookCreateComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookCreateComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookCreateComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookCreateComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookCreateComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookCreateComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookCreateComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookCreateComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookCreateComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookCreateComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookCreateComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookCreateComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookCreateComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookCreateComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookCreateComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookCreateComponent.html@47:89 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book-create/book-create.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:387:1) Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 5 of 8 (5 FAILED) (0 secs / 0.253 secs) Chrome 67.0.3396 (Mac OS X 10.13.6) BookCreateComponent should create FAILED Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit"): ng:///DynamicTestModule/BookCreateComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookCreateComponent.html@1:65 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookCreateComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookCreateComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookCreateComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookCreateComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookCreateComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookCreateComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookCreateComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookCreateComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookCreateComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookCreateComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookCreateComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookCreateComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookCreateComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookCreateComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookCreateComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookCreateComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookCreateComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookCreateComponent.html@47:89 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit"): ng:///DynamicTestModule/BookCreateComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookCreateComponent.html@1:65 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookCreateComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookCreateComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookCreateComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookCreateComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookCreateComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookCreateComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookCreateComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookCreateComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookCreateComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookCreateComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookCreateComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookCreateComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookCreateComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookCreateComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookCreateComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookCreateComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookCreateComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookCreateComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookCreateComponent.html@47:89 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book-create/book-create.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:387:1) Chrome 67.0.3396 (Mac OS X 10.13.6) BookDetailComponent should create FAILED Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:65 'mat-card-title' is not a known element: 1. If 'mat-card-title' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-title' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card class="example-card"> <mat-card-header> [ERROR ->]<mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle>{{book.description}}<"): ng:///DynamicTestModule/BookDetailComponent.html@5:4 'mat-card-subtitle' is not a known element: 1. If 'mat-card-subtitle' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-subtitle' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> [ERROR ->]<mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> <mat-card-content>"): ng:///DynamicTestModule/BookDetailComponent.html@6:4 'mat-card-header' is not a known element: 1. If 'mat-card-header' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-header' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <mat-card class="example-card"> [ERROR ->]<mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle"): ng:///DynamicTestModule/BookDetailComponent.html@4:2 'mat-card-content' is not a known element: 1. If 'mat-card-content' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-content' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> [ERROR ->]<mat-card-content> <dl> <dt>ISBN:</dt> "): ng:///DynamicTestModule/BookDetailComponent.html@8:2 Can't bind to 'routerLink' since it isn't a known property of 'a'. (" </mat-card-content> <mat-card-actions> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-edit', book._id]"><mat-icon>edit</mat-icon></a> <a mat-raised-button color="): ng:///DynamicTestModule/BookDetailComponent.html@23:41 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]">[ERROR ->]<mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)"><m"): ng:///DynamicTestModule/BookDetailComponent.html@23:81 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("><mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)">[ERROR ->]<mat-icon>delete</mat-icon></a> </mat-card-actions> </mat-card> "): ng:///DynamicTestModule/BookDetailComponent.html@24:69 'mat-card-actions' is not a known element: 1. If 'mat-card-actions' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-actions' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </dl> </mat-card-content> [ERROR ->]<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]"><"): ng:///DynamicTestModule/BookDetailComponent.html@22:2 'mat-card' is not a known element: 1. If 'mat-card' is an Angular component, then verify that it is part of this module. 2. If 'mat-card' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<a mat-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> [ERROR ->]<mat-card class="example-card"> <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-"): ng:///DynamicTestModule/BookDetailComponent.html@3:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:65 'mat-card-title' is not a known element: 1. If 'mat-card-title' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-title' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card class="example-card"> <mat-card-header> [ERROR ->]<mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle>{{book.description}}<"): ng:///DynamicTestModule/BookDetailComponent.html@5:4 'mat-card-subtitle' is not a known element: 1. If 'mat-card-subtitle' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-subtitle' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> [ERROR ->]<mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> <mat-card-content>"): ng:///DynamicTestModule/BookDetailComponent.html@6:4 'mat-card-header' is not a known element: 1. If 'mat-card-header' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-header' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <mat-card class="example-card"> [ERROR ->]<mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle"): ng:///DynamicTestModule/BookDetailComponent.html@4:2 'mat-card-content' is not a known element: 1. If 'mat-card-content' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-content' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> [ERROR ->]<mat-card-content> <dl> <dt>ISBN:</dt> "): ng:///DynamicTestModule/BookDetailComponent.html@8:2 Can't bind to 'routerLink' since it isn't a known property of 'a'. (" </mat-card-content> <mat-card-actions> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-edit', book._id]"><mat-icon>edit</mat-icon></a> <a mat-raised-button color="): ng:///DynamicTestModule/BookDetailComponent.html@23:41 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]">[ERROR ->]<mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)"><m"): ng:///DynamicTestModule/BookDetailComponent.html@23:81 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("><mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)">[ERROR ->]<mat-icon>delete</mat-icon></a> </mat-card-actions> </mat-card> "): ng:///DynamicTestModule/BookDetailComponent.html@24:69 'mat-card-actions' is not a known element: 1. If 'mat-card-actions' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-actions' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </dl> </mat-card-content> [ERROR ->]<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]"><"): ng:///DynamicTestModule/BookDetailComponent.html@22:2 'mat-card' is not a known element: 1. If 'mat-card' is an Angular component, then verify that it is part of this module. 2. If 'mat-card' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<a mat-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> [ERROR ->]<mat-card class="example-card"> <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-"): ng:///DynamicTestModule/BookDetailComponent.html@3:0 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book-detail/book-detail.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) Chrome 67.0.3396 (Mac OS X 10.13.6) BookDetailComponent should create FAILED Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:65 'mat-card-title' is not a known element: 1. If 'mat-card-title' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-title' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card class="example-card"> <mat-card-header> [ERROR ->]<mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle>{{book.description}}<"): ng:///DynamicTestModule/BookDetailComponent.html@5:4 'mat-card-subtitle' is not a known element: 1. If 'mat-card-subtitle' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-subtitle' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> [ERROR ->]<mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> <mat-card-content>"): ng:///DynamicTestModule/BookDetailComponent.html@6:4 'mat-card-header' is not a known element: 1. If 'mat-card-header' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-header' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <mat-card class="example-card"> [ERROR ->]<mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle"): ng:///DynamicTestModule/BookDetailComponent.html@4:2 'mat-card-content' is not a known element: 1. If 'mat-card-content' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-content' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> [ERROR ->]<mat-card-content> <dl> <dt>ISBN:</dt> "): ng:///DynamicTestModule/BookDetailComponent.html@8:2 Can't bind to 'routerLink' since it isn't a known property of 'a'. (" </mat-card-content> <mat-card-actions> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-edit', book._id]"><mat-icon>edit</mat-icon></a> <a mat-raised-button color="): ng:///DynamicTestModule/BookDetailComponent.html@23:41 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]">[ERROR ->]<mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)"><m"): ng:///DynamicTestModule/BookDetailComponent.html@23:81 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("><mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)">[ERROR ->]<mat-icon>delete</mat-icon></a> </mat-card-actions> </mat-card> "): ng:///DynamicTestModule/BookDetailComponent.html@24:69 'mat-card-actions' is not a known element: 1. If 'mat-card-actions' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-actions' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </dl> </mat-card-content> [ERROR ->]<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]"><"): ng:///DynamicTestModule/BookDetailComponent.html@22:2 'mat-card' is not a known element: 1. If 'mat-card' is an Angular component, then verify that it is part of this module. 2. If 'mat-card' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<a mat-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> [ERROR ->]<mat-card class="example-card"> <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-"): ng:///DynamicTestModule/BookDetailComponent.html@3:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:65 'mat-card-title' is not a known element: 1. If 'mat-card-title' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-title' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card class="example-card"> <mat-card-header> [ERROR ->]<mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle>{{book.description}}<"): ng:///DynamicTestModule/BookDetailComponent.html@5:4 'mat-card-subtitle' is not a known element: 1. If 'mat-card-subtitle' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-subtitle' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> [ERROR ->]<mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> <mat-card-content>"): ng:///DynamicTestModule/BookDetailComponent.html@6:4 'mat-card-header' is not a known element: 1. If 'mat-card-header' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-header' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <mat-card class="example-card"> [ERROR ->]<mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle"): ng:///DynamicTestModule/BookDetailComponent.html@4:2 'mat-card-content' is not a known element: 1. If 'mat-card-content' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-content' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> [ERROR ->]<mat-card-content> <dl> <dt>ISBN:</dt> "): ng:///DynamicTestModule/BookDetailComponent.html@8:2 Can't bind to 'routerLink' since it isn't a known property of 'a'. (" </mat-card-content> <mat-card-actions> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-edit', book._id]"><mat-icon>edit</mat-icon></a> <a mat-raised-button color="): ng:///DynamicTestModule/BookDetailComponent.html@23:41 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]">[ERROR ->]<mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)"><m"): ng:///DynamicTestModule/BookDetailComponent.html@23:81 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("><mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)">[ERROR ->]<mat-icon>delete</mat-icon></a> </mat-card-actions> </mat-card> "): ng:///DynamicTestModule/BookDetailComponent.html@24:69 'mat-card-actions' is not a known element: 1. If 'mat-card-actions' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-actions' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </dl> </mat-card-content> [ERROR ->]<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]"><"): ng:///DynamicTestModule/BookDetailComponent.html@22:2 'mat-card' is not a known element: 1. If 'mat-card' is an Angular component, then verify that it is part of this module. 2. If 'mat-card' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<a mat-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> [ERROR ->]<mat-card class="example-card"> <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-"): ng:///DynamicTestModule/BookDetailComponent.html@3:0 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book-detail/book-detail.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:387:1) Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 6 of 8 (6 FAILED) (0 secs / 0.275 secs) Chrome 67.0.3396 (Mac OS X 10.13.6) BookDetailComponent should create FAILED Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:65 'mat-card-title' is not a known element: 1. If 'mat-card-title' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-title' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card class="example-card"> <mat-card-header> [ERROR ->]<mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle>{{book.description}}<"): ng:///DynamicTestModule/BookDetailComponent.html@5:4 'mat-card-subtitle' is not a known element: 1. If 'mat-card-subtitle' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-subtitle' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> [ERROR ->]<mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> <mat-card-content>"): ng:///DynamicTestModule/BookDetailComponent.html@6:4 'mat-card-header' is not a known element: 1. If 'mat-card-header' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-header' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <mat-card class="example-card"> [ERROR ->]<mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle"): ng:///DynamicTestModule/BookDetailComponent.html@4:2 'mat-card-content' is not a known element: 1. If 'mat-card-content' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-content' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> [ERROR ->]<mat-card-content> <dl> <dt>ISBN:</dt> "): ng:///DynamicTestModule/BookDetailComponent.html@8:2 Can't bind to 'routerLink' since it isn't a known property of 'a'. (" </mat-card-content> <mat-card-actions> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-edit', book._id]"><mat-icon>edit</mat-icon></a> <a mat-raised-button color="): ng:///DynamicTestModule/BookDetailComponent.html@23:41 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]">[ERROR ->]<mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)"><m"): ng:///DynamicTestModule/BookDetailComponent.html@23:81 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("><mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)">[ERROR ->]<mat-icon>delete</mat-icon></a> </mat-card-actions> </mat-card> "): ng:///DynamicTestModule/BookDetailComponent.html@24:69 'mat-card-actions' is not a known element: 1. If 'mat-card-actions' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-actions' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </dl> </mat-card-content> [ERROR ->]<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]"><"): ng:///DynamicTestModule/BookDetailComponent.html@22:2 'mat-card' is not a known element: 1. If 'mat-card' is an Angular component, then verify that it is part of this module. 2. If 'mat-card' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<a mat-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> [ERROR ->]<mat-card class="example-card"> <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-"): ng:///DynamicTestModule/BookDetailComponent.html@3:0 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/books']">[ERROR ->]<mat-icon>list</mat-icon></a> </div> <mat-card class="example-card"> "): ng:///DynamicTestModule/BookDetailComponent.html@1:65 'mat-card-title' is not a known element: 1. If 'mat-card-title' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-title' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card class="example-card"> <mat-card-header> [ERROR ->]<mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle>{{book.description}}<"): ng:///DynamicTestModule/BookDetailComponent.html@5:4 'mat-card-subtitle' is not a known element: 1. If 'mat-card-subtitle' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-subtitle' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> [ERROR ->]<mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> <mat-card-content>"): ng:///DynamicTestModule/BookDetailComponent.html@6:4 'mat-card-header' is not a known element: 1. If 'mat-card-header' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-header' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <mat-card class="example-card"> [ERROR ->]<mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-card-title> <mat-card-subtitle"): ng:///DynamicTestModule/BookDetailComponent.html@4:2 'mat-card-content' is not a known element: 1. If 'mat-card-content' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-content' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" <mat-card-subtitle>{{book.description}}</mat-card-subtitle> </mat-card-header> [ERROR ->]<mat-card-content> <dl> <dt>ISBN:</dt> "): ng:///DynamicTestModule/BookDetailComponent.html@8:2 Can't bind to 'routerLink' since it isn't a known property of 'a'. (" </mat-card-content> <mat-card-actions> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-edit', book._id]"><mat-icon>edit</mat-icon></a> <a mat-raised-button color="): ng:///DynamicTestModule/BookDetailComponent.html@23:41 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]">[ERROR ->]<mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)"><m"): ng:///DynamicTestModule/BookDetailComponent.html@23:81 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("><mat-icon>edit</mat-icon></a> <a mat-raised-button color="warn" (click)="deleteBook(book._id)">[ERROR ->]<mat-icon>delete</mat-icon></a> </mat-card-actions> </mat-card> "): ng:///DynamicTestModule/BookDetailComponent.html@24:69 'mat-card-actions' is not a known element: 1. If 'mat-card-actions' is an Angular component, then verify that it is part of this module. 2. If 'mat-card-actions' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </dl> </mat-card-content> [ERROR ->]<mat-card-actions> <a mat-raised-button color="primary" [routerLink]="['/book-edit', book._id]"><"): ng:///DynamicTestModule/BookDetailComponent.html@22:2 'mat-card' is not a known element: 1. If 'mat-card' is an Angular component, then verify that it is part of this module. 2. If 'mat-card' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<a mat-raised-button color="primary" [routerLink]="['/books']"><mat-icon>list</mat-icon></a> </div> [ERROR ->]<mat-card class="example-card"> <mat-card-header> <mat-card-title><h2>{{book.title}}</h2></mat-"): ng:///DynamicTestModule/BookDetailComponent.html@3:0 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book-detail/book-detail.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:387:1) Chrome 67.0.3396 (Mac OS X 10.13.6) BookEditComponent should create FAILED 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" (click)="bookDetails()">[ERROR ->]<mat-icon>show</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookEditComponent.html@1:63 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("at-raised-button color="primary" (click)="bookDetails()"><mat-icon>show</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookEditComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookEditComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookEditComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookEditComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookEditComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookEditComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookEditComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookEditComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookEditComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookEditComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookEditComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookEditComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookEditComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookEditComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookEditComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookEditComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookEditComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookEditComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookEditComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookEditComponent.html@47:89 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" (click)="bookDetails()">[ERROR ->]<mat-icon>show</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookEditComponent.html@1:63 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("at-raised-button color="primary" (click)="bookDetails()"><mat-icon>show</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookEditComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookEditComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookEditComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookEditComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookEditComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookEditComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookEditComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookEditComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookEditComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookEditComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookEditComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookEditComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookEditComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookEditComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookEditComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookEditComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookEditComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookEditComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookEditComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookEditComponent.html@47:89 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book-edit/book-edit.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) Chrome 67.0.3396 (Mac OS X 10.13.6) BookEditComponent should create FAILED 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" (click)="bookDetails()">[ERROR ->]<mat-icon>show</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookEditComponent.html@1:63 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("at-raised-button color="primary" (click)="bookDetails()"><mat-icon>show</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookEditComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookEditComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookEditComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookEditComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookEditComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookEditComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookEditComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookEditComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookEditComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookEditComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookEditComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookEditComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookEditComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookEditComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookEditComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookEditComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookEditComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookEditComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookEditComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookEditComponent.html@47:89 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" (click)="bookDetails()">[ERROR ->]<mat-icon>show</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookEditComponent.html@1:63 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("at-raised-button color="primary" (click)="bookDetails()"><mat-icon>show</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookEditComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookEditComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookEditComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookEditComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookEditComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookEditComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookEditComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookEditComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookEditComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookEditComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookEditComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookEditComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookEditComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookEditComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookEditComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookEditComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookEditComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookEditComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookEditComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookEditComponent.html@47:89 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book-edit/book-edit.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:387:1) Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 7 of 8 (7 FAILED) (0 secs / 0.3 secs) Chrome 67.0.3396 (Mac OS X 10.13.6) BookEditComponent should create FAILED 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" (click)="bookDetails()">[ERROR ->]<mat-icon>show</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookEditComponent.html@1:63 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("at-raised-button color="primary" (click)="bookDetails()"><mat-icon>show</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookEditComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookEditComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookEditComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookEditComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookEditComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookEditComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookEditComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookEditComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookEditComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookEditComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookEditComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookEditComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookEditComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookEditComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookEditComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookEditComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookEditComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookEditComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookEditComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookEditComponent.html@47:89 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" (click)="bookDetails()">[ERROR ->]<mat-icon>show</mat-icon></a> </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.v"): ng:///DynamicTestModule/BookEditComponent.html@1:63 Can't bind to 'formGroup' since it isn't a known property of 'form'. ("at-raised-button color="primary" (click)="bookDetails()"><mat-icon>show</mat-icon></a> </div> <form [ERROR ->][formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> <mat-form-field class="example-fu"): ng:///DynamicTestModule/BookEditComponent.html@3:6 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("lass="example-full-width"> <input matInput placeholder="ISBN" formControlName="isbn" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('isbn').valid && book"): ng:///DynamicTestModule/BookEditComponent.html@6:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("ut matInput placeholder="ISBN" formControlName="isbn" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('isbn').valid && bookForm.get('isbn').touched">Please en"): ng:///DynamicTestModule/BookEditComponent.html@7:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </div> <form [formGroup]="bookForm" (ngSubmit)="onFormSubmit(bookForm.value)"> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="ISBN" formControlName="i"): ng:///DynamicTestModule/BookEditComponent.html@4:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ss="example-full-width"> <input matInput placeholder="Title" formControlName="title" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('title').valid && boo"): ng:///DynamicTestModule/BookEditComponent.html@13:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" matInput placeholder="Title" formControlName="title" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('title').valid && bookForm.get('title').touched">Please "): ng:///DynamicTestModule/BookEditComponent.html@14:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Title" formControlName=""): ng:///DynamicTestModule/BookEditComponent.html@11:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("="example-full-width"> <input matInput placeholder="Author" formControlName="author" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('author').valid && bo"): ng:///DynamicTestModule/BookEditComponent.html@20:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("atInput placeholder="Author" formControlName="author" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('author').valid && bookForm.get('author').touched">Pleas"): ng:///DynamicTestModule/BookEditComponent.html@21:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Author" formControlName="): ng:///DynamicTestModule/BookEditComponent.html@18:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'textarea'. ("l-width"> <textarea matInput placeholder="Description" formControlName="description" [ERROR ->][errorStateMatcher]="matcher"></textarea> <mat-error> <span *ngIf="!bookForm.get('descripti"): ng:///DynamicTestModule/BookEditComponent.html@27:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("Description" formControlName="description" [errorStateMatcher]="matcher"></textarea> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('description').valid && bookForm.get('description').touc"): ng:///DynamicTestModule/BookEditComponent.html@28:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <textarea matInput placeholder="Description" formCont"): ng:///DynamicTestModule/BookEditComponent.html@25:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("ple-full-width"> <input matInput placeholder="Publisher" formControlName="publisher" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('publisher').valid &&"): ng:///DynamicTestModule/BookEditComponent.html@34:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("t placeholder="Publisher" formControlName="publisher" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('publisher').valid && bookForm.get('publisher').touched""): ng:///DynamicTestModule/BookEditComponent.html@35:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Publisher" formControlNa"): ng:///DynamicTestModule/BookEditComponent.html@32:2 Can't bind to 'errorStateMatcher' since it isn't a known property of 'input'. ("idth"> <input matInput placeholder="Published Year" formControlName="published_year" [ERROR ->][errorStateMatcher]="matcher"> <mat-error> <span *ngIf="!bookForm.get('published_year').val"): ng:///DynamicTestModule/BookEditComponent.html@41:11 'mat-error' is not a known element: 1. If 'mat-error' is an Angular component, then verify that it is part of this module. 2. If 'mat-error' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("der="Published Year" formControlName="published_year" [errorStateMatcher]="matcher"> [ERROR ->]<mat-error> <span *ngIf="!bookForm.get('published_year').valid && bookForm.get('published_year'"): ng:///DynamicTestModule/BookEditComponent.html@42:4 'mat-form-field' is not a known element: 1. If 'mat-form-field' is an Angular component, then verify that it is part of this module. 2. If 'mat-form-field' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. (" </mat-error> </mat-form-field> [ERROR ->]<mat-form-field class="example-full-width"> <input matInput placeholder="Published Year" formCont"): ng:///DynamicTestModule/BookEditComponent.html@39:2 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("tton-row"> <button type="submit" [disabled]="!bookForm.valid" mat-raised-button color="primary">[ERROR ->]<mat-icon>save</mat-icon></button> </div> </form> "): ng:///DynamicTestModule/BookEditComponent.html@47:89 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book-edit/book-edit.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:387:1) Chrome 67.0.3396 (Mac OS X 10.13.6) BookComponent should create FAILED Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-create']"><mat-icon>add</mat-icon></a> </div> <div class="example-container mat"): ng:///DynamicTestModule/BookComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/book-create']">[ERROR ->]<mat-icon>add</mat-icon></a> </div> <div class="example-container mat-elevation-z8"> "): ng:///DynamicTestModule/BookComponent.html@1:71 Can't bind to 'dataSource' since it isn't a known property of 'table'. (" </div> <div class="example-container mat-elevation-z8"> <table mat-table #table [ERROR ->][dataSource]="dataSource"> <!--- Note that these columns can be defined in any order. "): ng:///DynamicTestModule/BookComponent.html@4:26 Can't bind to 'matHeaderRowDef' since it isn't a known property of 'tr'. (" </ng-container> <tr mat-header-row [ERROR ->]*matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColu"): ng:///DynamicTestModule/BookComponent.html@27:23 Property binding matHeaderRowDef not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" </ng-container> [ERROR ->]<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; col"): ng:///DynamicTestModule/BookComponent.html@27:4 Can't bind to 'routerLink' since it isn't a known property of 'tr'. ("derRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColumns;" [ERROR ->][routerLink]="['/book-details/', row._id]"></tr> </table> </div> "): ng:///DynamicTestModule/BookComponent.html@28:65 Can't bind to 'matRowDefColumns' since it isn't a known property of 'tr'. (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row [ERROR ->]*matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id]"></tr> <"): ng:///DynamicTestModule/BookComponent.html@28:16 Property binding matRowDefColumns not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> [ERROR ->]<tr mat-row *matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id"): ng:///DynamicTestModule/BookComponent.html@28:4 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-create']"><mat-icon>add</mat-icon></a> </div> <div class="example-container mat"): ng:///DynamicTestModule/BookComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/book-create']">[ERROR ->]<mat-icon>add</mat-icon></a> </div> <div class="example-container mat-elevation-z8"> "): ng:///DynamicTestModule/BookComponent.html@1:71 Can't bind to 'dataSource' since it isn't a known property of 'table'. (" </div> <div class="example-container mat-elevation-z8"> <table mat-table #table [ERROR ->][dataSource]="dataSource"> <!--- Note that these columns can be defined in any order. "): ng:///DynamicTestModule/BookComponent.html@4:26 Can't bind to 'matHeaderRowDef' since it isn't a known property of 'tr'. (" </ng-container> <tr mat-header-row [ERROR ->]*matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColu"): ng:///DynamicTestModule/BookComponent.html@27:23 Property binding matHeaderRowDef not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" </ng-container> [ERROR ->]<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; col"): ng:///DynamicTestModule/BookComponent.html@27:4 Can't bind to 'routerLink' since it isn't a known property of 'tr'. ("derRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColumns;" [ERROR ->][routerLink]="['/book-details/', row._id]"></tr> </table> </div> "): ng:///DynamicTestModule/BookComponent.html@28:65 Can't bind to 'matRowDefColumns' since it isn't a known property of 'tr'. (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row [ERROR ->]*matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id]"></tr> <"): ng:///DynamicTestModule/BookComponent.html@28:16 Property binding matRowDefColumns not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> [ERROR ->]<tr mat-row *matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id"): ng:///DynamicTestModule/BookComponent.html@28:4 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book/book.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) Chrome 67.0.3396 (Mac OS X 10.13.6) BookComponent should create FAILED Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-create']"><mat-icon>add</mat-icon></a> </div> <div class="example-container mat"): ng:///DynamicTestModule/BookComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/book-create']">[ERROR ->]<mat-icon>add</mat-icon></a> </div> <div class="example-container mat-elevation-z8"> "): ng:///DynamicTestModule/BookComponent.html@1:71 Can't bind to 'dataSource' since it isn't a known property of 'table'. (" </div> <div class="example-container mat-elevation-z8"> <table mat-table #table [ERROR ->][dataSource]="dataSource"> <!--- Note that these columns can be defined in any order. "): ng:///DynamicTestModule/BookComponent.html@4:26 Can't bind to 'matHeaderRowDef' since it isn't a known property of 'tr'. (" </ng-container> <tr mat-header-row [ERROR ->]*matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColu"): ng:///DynamicTestModule/BookComponent.html@27:23 Property binding matHeaderRowDef not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" </ng-container> [ERROR ->]<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; col"): ng:///DynamicTestModule/BookComponent.html@27:4 Can't bind to 'routerLink' since it isn't a known property of 'tr'. ("derRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColumns;" [ERROR ->][routerLink]="['/book-details/', row._id]"></tr> </table> </div> "): ng:///DynamicTestModule/BookComponent.html@28:65 Can't bind to 'matRowDefColumns' since it isn't a known property of 'tr'. (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row [ERROR ->]*matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id]"></tr> <"): ng:///DynamicTestModule/BookComponent.html@28:16 Property binding matRowDefColumns not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> [ERROR ->]<tr mat-row *matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id"): ng:///DynamicTestModule/BookComponent.html@28:4 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-create']"><mat-icon>add</mat-icon></a> </div> <div class="example-container mat"): ng:///DynamicTestModule/BookComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/book-create']">[ERROR ->]<mat-icon>add</mat-icon></a> </div> <div class="example-container mat-elevation-z8"> "): ng:///DynamicTestModule/BookComponent.html@1:71 Can't bind to 'dataSource' since it isn't a known property of 'table'. (" </div> <div class="example-container mat-elevation-z8"> <table mat-table #table [ERROR ->][dataSource]="dataSource"> <!--- Note that these columns can be defined in any order. "): ng:///DynamicTestModule/BookComponent.html@4:26 Can't bind to 'matHeaderRowDef' since it isn't a known property of 'tr'. (" </ng-container> <tr mat-header-row [ERROR ->]*matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColu"): ng:///DynamicTestModule/BookComponent.html@27:23 Property binding matHeaderRowDef not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" </ng-container> [ERROR ->]<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; col"): ng:///DynamicTestModule/BookComponent.html@27:4 Can't bind to 'routerLink' since it isn't a known property of 'tr'. ("derRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColumns;" [ERROR ->][routerLink]="['/book-details/', row._id]"></tr> </table> </div> "): ng:///DynamicTestModule/BookComponent.html@28:65 Can't bind to 'matRowDefColumns' since it isn't a known property of 'tr'. (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row [ERROR ->]*matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id]"></tr> <"): ng:///DynamicTestModule/BookComponent.html@28:16 Property binding matRowDefColumns not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> [ERROR ->]<tr mat-row *matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id"): ng:///DynamicTestModule/BookComponent.html@28:4 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book/book.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:387:1) Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 8 of 8 (8 FAILED) (0 secs / 0.321 secs) Chrome 67.0.3396 (Mac OS X 10.13.6) BookComponent should create FAILED Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-create']"><mat-icon>add</mat-icon></a> </div> <div class="example-container mat"): ng:///DynamicTestModule/BookComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/book-create']">[ERROR ->]<mat-icon>add</mat-icon></a> </div> <div class="example-container mat-elevation-z8"> "): ng:///DynamicTestModule/BookComponent.html@1:71 Can't bind to 'dataSource' since it isn't a known property of 'table'. (" </div> <div class="example-container mat-elevation-z8"> <table mat-table #table [ERROR ->][dataSource]="dataSource"> <!--- Note that these columns can be defined in any order. "): ng:///DynamicTestModule/BookComponent.html@4:26 Can't bind to 'matHeaderRowDef' since it isn't a known property of 'tr'. (" </ng-container> <tr mat-header-row [ERROR ->]*matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColu"): ng:///DynamicTestModule/BookComponent.html@27:23 Property binding matHeaderRowDef not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" </ng-container> [ERROR ->]<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; col"): ng:///DynamicTestModule/BookComponent.html@27:4 Can't bind to 'routerLink' since it isn't a known property of 'tr'. ("derRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColumns;" [ERROR ->][routerLink]="['/book-details/', row._id]"></tr> </table> </div> "): ng:///DynamicTestModule/BookComponent.html@28:65 Can't bind to 'matRowDefColumns' since it isn't a known property of 'tr'. (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row [ERROR ->]*matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id]"></tr> <"): ng:///DynamicTestModule/BookComponent.html@28:16 Property binding matRowDefColumns not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> [ERROR ->]<tr mat-row *matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id"): ng:///DynamicTestModule/BookComponent.html@28:4 Error: Template parse errors: at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Error: Template parse errors: Can't bind to 'routerLink' since it isn't a known property of 'a'. ("<div class="button-row"> <a mat-raised-button color="primary" [ERROR ->][routerLink]="['/book-create']"><mat-icon>add</mat-icon></a> </div> <div class="example-container mat"): ng:///DynamicTestModule/BookComponent.html@1:39 'mat-icon' is not a known element: 1. If 'mat-icon' is an Angular component, then verify that it is part of this module. 2. If 'mat-icon' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<div class="button-row"> <a mat-raised-button color="primary" [routerLink]="['/book-create']">[ERROR ->]<mat-icon>add</mat-icon></a> </div> <div class="example-container mat-elevation-z8"> "): ng:///DynamicTestModule/BookComponent.html@1:71 Can't bind to 'dataSource' since it isn't a known property of 'table'. (" </div> <div class="example-container mat-elevation-z8"> <table mat-table #table [ERROR ->][dataSource]="dataSource"> <!--- Note that these columns can be defined in any order. "): ng:///DynamicTestModule/BookComponent.html@4:26 Can't bind to 'matHeaderRowDef' since it isn't a known property of 'tr'. (" </ng-container> <tr mat-header-row [ERROR ->]*matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColu"): ng:///DynamicTestModule/BookComponent.html@27:23 Property binding matHeaderRowDef not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" </ng-container> [ERROR ->]<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; col"): ng:///DynamicTestModule/BookComponent.html@27:4 Can't bind to 'routerLink' since it isn't a known property of 'tr'. ("derRowDef="displayedColumns"></tr> <tr mat-row *matRowDef="let row; columns: displayedColumns;" [ERROR ->][routerLink]="['/book-details/', row._id]"></tr> </table> </div> "): ng:///DynamicTestModule/BookComponent.html@28:65 Can't bind to 'matRowDefColumns' since it isn't a known property of 'tr'. (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-row [ERROR ->]*matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id]"></tr> <"): ng:///DynamicTestModule/BookComponent.html@28:16 Property binding matRowDefColumns not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". (" <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> [ERROR ->]<tr mat-row *matRowDef="let row; columns: displayedColumns;" [routerLink]="['/book-details/', row._id"): ng:///DynamicTestModule/BookComponent.html@28:4 at syntaxError node_modules/@angular/compiler/fesm5/compiler.js:215:1) at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse node_modules/@angular/compiler/fesm5/compiler.js:14702:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate node_modules/@angular/compiler/fesm5/compiler.js:22709:1) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate node_modules/@angular/compiler/fesm5/compiler.js:22696:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22639:48 at Set.forEach (<anonymous>) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents node_modules/@angular/compiler/fesm5/compiler.js:22639:1) at http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/compiler/fesm5/compiler.js:22557:1 at Object.then node_modules/@angular/compiler/fesm5/compiler.js:206:33) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndAllComponents node_modules/@angular/compiler/fesm5/compiler.js:22555:1) Expected undefined to be truthy. at UserContext.<anonymous> src/app/book/book.component.spec.ts:23:23) at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke node_modules/zone.js/dist/zone.js:388:1) at ProxyZoneSpec.push../node_modules/zone.js/dist/zone-testing.js.ProxyZoneSpec.onInvoke node_modules/zone.js/dist/zone-testing.js:288:1) Chrome 67.0.3396 (Mac OS X 10.13.6): Executed 8 of 8 (8 FAILED) ERROR (0.737 secs / 0.321 secs) ``` This is my `npm ls --depth=1` ``` mean-angular6@0.0.0 /Users/alund/prj/_forks/mean-stack-angular6-crud-example ├─┬ @angular-devkit/build-angular@0.6.1 │ ├── @angular-devkit/architect@0.6.1 │ ├── @angular-devkit/build-optimizer@0.6.1 │ ├── @angular-devkit/core@0.6.1 │ ├── @ngtools/webpack@6.0.1 │ ├── ajv@6.4.0 │ ├── autoprefixer@8.5.0 │ ├── cache-loader@1.2.2 │ ├── chalk@2.2.2 │ ├── circular-dependency-plugin@5.0.2 │ ├── clean-css@4.1.11 │ ├── copy-webpack-plugin@4.5.1 │ ├── file-loader@1.1.11 │ ├── glob@7.1.2 │ ├── html-webpack-plugin@3.2.0 │ ├── istanbul@0.4.5 │ ├── istanbul-instrumenter-loader@3.0.1 │ ├── karma-source-map-support@1.3.0 │ ├── less@3.0.4 │ ├── less-loader@4.1.0 │ ├── license-webpack-plugin@1.3.1 │ ├── lodash@4.17.10 │ ├── memory-fs@0.4.1 │ ├── mini-css-extract-plugin@0.4.0 │ ├── minimatch@3.0.4 │ ├── node-sass@4.9.0 │ ├── opn@5.3.0 │ ├── parse5@4.0.0 │ ├── portfinder@1.0.13 │ ├── postcss@6.0.22 │ ├── postcss-import@11.1.0 │ ├── postcss-loader@2.1.5 │ ├── postcss-url@7.3.2 │ ├── raw-loader@0.5.1 │ ├── resolve@1.7.1 │ ├── rxjs@6.1.0 deduped │ ├── sass-loader@7.0.1 │ ├── silent-error@1.1.0 │ ├── source-map-support@0.5.6 │ ├── stats-webpack-plugin@0.6.2 │ ├── style-loader@0.21.0 │ ├── stylus@0.54.5 │ ├── stylus-loader@3.0.2 │ ├── tree-kill@1.2.0 │ ├── uglifyjs-webpack-plugin@1.2.5 │ ├── url-loader@1.0.1 │ ├── webpack@4.6.0 │ ├── webpack-dev-middleware@3.1.3 │ ├── webpack-dev-server@3.1.4 │ ├── webpack-merge@4.1.2 │ ├── webpack-sources@1.1.0 │ └── webpack-subresource-integrity@1.1.0-rc.4 ├─┬ @angular/animations@6.0.2 │ └── tslib@1.9.1 ├─┬ @angular/cdk@6.0.2 │ └── tslib@1.9.1 deduped ├─┬ @angular/cli@6.0.0 │ ├── @angular-devkit/architect@0.6.0 │ ├── @angular-devkit/core@0.6.0 │ ├── @angular-devkit/schematics@0.6.0 │ ├── @schematics/angular@0.6.0 │ ├── @schematics/update@0.6.0 │ ├── opn@5.1.0 │ ├── resolve@1.7.1 deduped │ ├── rxjs@6.1.0 deduped │ ├── semver@5.5.0 │ ├── silent-error@1.1.0 deduped │ ├── symbol-observable@1.2.0 │ └── yargs-parser@10.0.0 ├─┬ @angular/common@6.0.2 │ └── tslib@1.9.1 deduped ├─┬ @angular/compiler@6.0.2 │ └── tslib@1.9.1 deduped ├─┬ @angular/compiler-cli@6.0.2 │ ├── chokidar@1.7.0 │ ├── minimist@1.2.0 │ ├── reflect-metadata@0.1.12 │ └── tsickle@0.27.5 ├─┬ @angular/core@6.0.2 │ └── tslib@1.9.1 deduped ├─┬ @angular/forms@6.0.2 │ └── tslib@1.9.1 deduped ├─┬ @angular/http@6.0.2 │ └── tslib@1.9.1 deduped ├── @angular/language-service@6.0.2 ├─┬ @angular/material@6.0.2 │ └── tslib@1.9.1 deduped ├─┬ @angular/platform-browser@6.0.2 │ └── tslib@1.9.1 deduped ├─┬ @angular/platform-browser-dynamic@6.0.2 │ └── tslib@1.9.1 deduped ├─┬ @angular/router@6.0.2 │ └── tslib@1.9.1 deduped ├── @types/jasmine@2.8.7 ├─┬ @types/jasminewd2@2.0.3 │ └── @types/jasmine@2.8.7 deduped ├── @types/node@8.9.5 ├─┬ body-parser@1.18.3 │ ├── bytes@3.0.0 │ ├── content-type@1.0.4 │ ├── debug@2.6.9 │ ├── depd@1.1.2 │ ├── http-errors@1.6.3 deduped │ ├── iconv-lite@0.4.23 │ ├── on-finished@2.3.0 │ ├── qs@6.5.2 │ ├── raw-body@2.3.3 │ └── type-is@1.6.16 ├─┬ codelyzer@4.2.1 │ ├── app-root-path@2.0.1 │ ├── css-selector-tokenizer@0.7.0 │ ├── cssauron@1.4.0 │ ├── semver-dsl@1.0.1 │ ├── source-map@0.5.7 │ └── sprintf-js@1.0.3 ├── core-js@2.5.6 ├─┬ express@4.16.3 │ ├── accepts@1.3.5 │ ├── array-flatten@1.1.1 │ ├── body-parser@1.18.2 │ ├── content-disposition@0.5.2 │ ├── content-type@1.0.4 deduped │ ├── cookie@0.3.1 │ ├── cookie-signature@1.0.6 │ ├── debug@2.6.9 deduped │ ├── depd@1.1.2 deduped │ ├── encodeurl@1.0.2 │ ├── escape-html@1.0.3 │ ├── etag@1.8.1 │ ├── finalhandler@1.1.1 │ ├── fresh@0.5.2 │ ├── merge-descriptors@1.0.1 │ ├── methods@1.1.2 │ ├── on-finished@2.3.0 deduped │ ├── parseurl@1.3.2 │ ├── path-to-regexp@0.1.7 │ ├── proxy-addr@2.0.3 │ ├── qs@6.5.1 │ ├── range-parser@1.2.0 │ ├── safe-buffer@5.1.1 │ ├── send@0.16.2 │ ├── serve-static@1.13.2 │ ├── setprototypeof@1.1.0 │ ├── statuses@1.4.0 │ ├── type-is@1.6.16 deduped │ ├── utils-merge@1.0.1 │ └── vary@1.1.2 ├─┬ http-errors@1.6.3 │ ├── depd@1.1.2 deduped │ ├── inherits@2.0.3 │ ├── setprototypeof@1.1.0 deduped │ └── statuses@1.4.0 deduped ├── jasmine-core@2.99.1 ├─┬ jasmine-spec-reporter@4.2.1 │ └── colors@1.1.2 ├─┬ karma@1.7.1 │ ├── bluebird@3.5.1 │ ├── body-parser@1.18.3 deduped │ ├── chokidar@1.7.0 │ ├── colors@1.1.2 deduped │ ├── combine-lists@1.0.1 │ ├── connect@3.6.6 │ ├── core-js@2.5.6 deduped │ ├── di@0.0.1 │ ├── dom-serialize@2.2.1 │ ├── expand-braces@0.1.2 │ ├── glob@7.1.2 deduped │ ├── graceful-fs@4.1.11 │ ├── http-proxy@1.17.0 │ ├── isbinaryfile@3.0.2 │ ├── lodash@3.10.1 │ ├── log4js@0.6.38 │ ├── mime@1.6.0 │ ├── minimatch@3.0.4 deduped │ ├── optimist@0.6.1 │ ├── qjobs@1.2.0 │ ├── range-parser@1.2.0 deduped │ ├── rimraf@2.6.2 │ ├── safe-buffer@5.1.2 │ ├── socket.io@1.7.3 │ ├── source-map@0.5.7 deduped │ ├── tmp@0.0.31 │ └── useragent@2.3.0 ├─┬ karma-chrome-launcher@2.2.0 │ ├── fs-access@1.0.1 │ └── which@1.3.0 ├─┬ karma-coverage-istanbul-reporter@1.4.2 │ ├── istanbul-api@1.3.1 │ └── minimatch@3.0.4 deduped ├── karma-jasmine@1.1.2 ├─┬ karma-jasmine-html-reporter@0.2.2 │ └── karma-jasmine@1.1.2 deduped ├─┬ mongoose@5.1.1 │ ├── async@2.1.4 │ ├── bson@1.0.6 │ ├── kareem@2.0.7 │ ├── lodash.get@4.4.2 │ ├── mongodb@3.0.8 │ ├── mongoose-legacy-pluralize@1.0.2 │ ├── mpath@0.4.1 │ ├── mquery@3.0.0 │ ├── ms@2.0.0 │ ├── regexp-clone@0.0.1 │ └── sliced@1.0.1 ├─┬ morgan@1.9.0 │ ├── basic-auth@2.0.0 │ ├── debug@2.6.9 deduped │ ├── depd@1.1.2 deduped │ ├── on-finished@2.3.0 deduped │ └── on-headers@1.0.1 ├─┬ protractor@5.3.2 │ ├── @types/node@6.0.110 │ ├── @types/q@0.0.32 │ ├── @types/selenium-webdriver@2.53.43 │ ├── blocking-proxy@1.0.1 │ ├── chalk@1.1.3 │ ├── glob@7.1.2 deduped │ ├── jasmine@2.8.0 │ ├── jasminewd2@2.2.0 │ ├── optimist@0.6.1 deduped │ ├── q@1.4.1 │ ├── saucelabs@1.5.0 │ ├── selenium-webdriver@3.6.0 │ ├── source-map-support@0.4.18 │ ├── webdriver-js-extender@1.0.0 │ └── webdriver-manager@12.0.6 ├─┬ rxjs@6.1.0 │ └── tslib@1.9.1 deduped ├─┬ serve-favicon@2.5.0 │ ├── etag@1.8.1 deduped │ ├── fresh@0.5.2 deduped │ ├── ms@2.1.1 │ ├── parseurl@1.3.2 deduped │ └── safe-buffer@5.1.1 ├─┬ ts-node@5.0.1 │ ├── arrify@1.0.1 │ ├── chalk@2.4.1 │ ├── diff@3.5.0 │ ├── make-error@1.3.4 │ ├── minimist@1.2.0 │ ├── mkdirp@0.5.1 │ ├── source-map-support@0.5.6 deduped │ └── yn@2.0.0 ├─┬ tslint@5.9.1 │ ├── babel-code-frame@6.26.0 │ ├── builtin-modules@1.1.1 │ ├── chalk@2.4.1 │ ├── commander@2.15.1 │ ├── diff@3.5.0 deduped │ ├── glob@7.1.2 deduped │ ├── js-yaml@3.11.0 │ ├── minimatch@3.0.4 deduped │ ├── resolve@1.7.1 deduped │ ├── semver@5.5.0 deduped │ ├── tslib@1.9.1 deduped │ └── tsutils@2.27.0 ├── typescript@2.7.2 └── zone.js@0.8.26 ``` I also have this when my `ng` starts ``` Your global Angular CLI version (6.1.0-rc.3) is greater than your local version (6.0.0). The local Angular CLI version is used. To disable this warning use "ng config -g cli.warnings.versionMismatch false". ``` As result `ng -v` gives this: ``` Angular CLI: 6.0.0 Node: 10.7.0 OS: darwin x64 Angular: 6.0.2 ... animations, cdk, common, compiler, compiler-cli, core, forms ... http, language-service, material, platform-browser ... platform-browser-dynamic, router Package Version ----------------------------------------------------------- @angular-devkit/architect 0.6.1 @angular-devkit/build-angular 0.6.1 @angular-devkit/build-optimizer 0.6.1 @angular-devkit/core 0.6.1 @angular-devkit/schematics 0.6.0 @angular/cli 6.0.0 @ngtools/webpack 6.0.1 @schematics/angular 0.6.0 @schematics/update 0.6.0 rxjs 6.1.0 typescript 2.7.2 webpack 4.6.0 ``` I updated global angular-cli to v6.1.0-rc.3 due to this issue https://github.com/angular/material2/issues/12362 I have node v10.7.0 and npm v6.1.0 I tried to change `package.json`.`scripts`: `ng: 'ng'` => `"ng": "./node_modules/.bin/ng",` But nothing changed. @didinj any ideas?