METRON-1636: Fix broken unit test setup in metron-alerts closes apache/incubator-metron#1085
Project: http://git-wip-us.apache.org/repos/asf/metron/repo Commit: http://git-wip-us.apache.org/repos/asf/metron/commit/fc9ff853 Tree: http://git-wip-us.apache.org/repos/asf/metron/tree/fc9ff853 Diff: http://git-wip-us.apache.org/repos/asf/metron/diff/fc9ff853 Branch: refs/heads/feature/METRON-1554-pcap-query-panel Commit: fc9ff85368c2a974d30ad6ccdb73a4cc26fd025c Parents: be9a921 Author: tiborm <[email protected]> Authored: Mon Jul 2 11:07:28 2018 -0400 Committer: cstella <[email protected]> Committed: Mon Jul 2 11:07:28 2018 -0400 ---------------------------------------------------------------------- metron-interface/metron-alerts/.gitignore | 1 + metron-interface/metron-alerts/karma.conf.js | 2 +- .../alert-filters.component.spec.ts | 14 ++++-- .../table-view/table-view.component.spec.ts | 49 ++++++++++++++++---- .../table-view/table-view.component.ts | 8 +--- .../tree-view/tree-view.component.spec.ts | 32 ++++++++++++- .../tree-view/tree-view.component.ts | 6 +-- .../configure-rows.component.spec.ts | 18 ++++++- .../save-search/save-search.component.spec.ts | 16 +++++++ .../saved-searches.component.spec.ts | 27 ++++++++++- .../metron-alerts/src/app/app.component.spec.ts | 26 ++++++++++- .../src/app/login/login.component.spec.ts | 40 +++++++++------- .../shared/collapse/collapse.component.spec.ts | 12 ++++- .../app/shared/collapse/collapse.component.ts | 2 +- .../date-picker/date-picker.component.spec.ts | 4 ++ .../directives/alert-search.directive.spec.ts | 21 --------- .../alert-severity-hexagon.directive.spec.ts | 5 +- .../directives/nav-content.directive.spec.ts | 6 ++- .../list-group/list-group.component.spec.ts | 2 +- .../metron-sorter.component.spec.ts | 14 +++--- .../metron-table-pagination.component.spec.ts | 2 +- .../shared/pipes/center-ellipses.pipe.spec.ts | 2 +- .../pipes/column-name-translate.pipe.spec.ts | 2 +- .../src/app/shared/pipes/map-keys.pipe.spec.ts | 2 +- .../app/shared/switch/switch.component.spec.ts | 2 +- .../time-range/time-range.component.spec.ts | 12 ++++- 26 files changed, 241 insertions(+), 86 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/.gitignore ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/.gitignore b/metron-interface/metron-alerts/.gitignore index 0667762..703c7a9 100644 --- a/metron-interface/metron-alerts/.gitignore +++ b/metron-interface/metron-alerts/.gitignore @@ -3,3 +3,4 @@ metron-alerts.iml node_modules/ /dist/ +coverage http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/karma.conf.js ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/karma.conf.js b/metron-interface/metron-alerts/karma.conf.js index ca1c3d2..f245e1d 100644 --- a/metron-interface/metron-alerts/karma.conf.js +++ b/metron-interface/metron-alerts/karma.conf.js @@ -42,7 +42,7 @@ module.exports = function (config) { 'text/x-typescript': ['ts','tsx'] }, coverageIstanbulReporter: { - reports: [ 'html', 'lcovonly' ], + reports: [ 'html', 'lcovonly', 'text-summary' ], fixWebpackSourcePaths: true }, angularCli: { http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/alerts/alerts-list/alert-filters/alert-filters.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/alerts/alerts-list/alert-filters/alert-filters.component.spec.ts b/metron-interface/metron-alerts/src/app/alerts/alerts-list/alert-filters/alert-filters.component.spec.ts index 54fa4bf..7cbcdcc 100644 --- a/metron-interface/metron-alerts/src/app/alerts/alerts-list/alert-filters/alert-filters.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/alerts/alerts-list/alert-filters/alert-filters.component.spec.ts @@ -1,6 +1,9 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { CollapseComponent } from '../../../shared/collapse/collapse.component'; import { AlertFiltersComponent } from './alert-filters.component'; +import { CenterEllipsesPipe } from '../../../shared/pipes/center-ellipses.pipe'; +import { ColumnNameTranslatePipe } from '../../../shared/pipes/column-name-translate.pipe'; describe('AlertFiltersComponent', () => { let component: AlertFiltersComponent; @@ -8,16 +11,19 @@ describe('AlertFiltersComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ AlertFiltersComponent ] + declarations: [ + CollapseComponent, + CenterEllipsesPipe, + ColumnNameTranslatePipe, + AlertFiltersComponent, + ] }) .compileComponents(); - })); - beforeEach(() => { fixture = TestBed.createComponent(AlertFiltersComponent); component = fixture.componentInstance; fixture.detectChanges(); - }); + })); it('should be created', () => { expect(component).toBeTruthy(); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.spec.ts b/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.spec.ts index b4611e9..84ed557 100644 --- a/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.spec.ts @@ -1,24 +1,57 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { Component, Input } from '@angular/core'; +import { HttpModule } from '@angular/http'; import { TableViewComponent } from './table-view.component'; +import { MetronTableDirective } from '../../../shared/metron-table/metron-table.directive'; +import { MetronSorterComponent } from '../../../shared/metron-table/metron-sorter'; +import { CenterEllipsesPipe } from '../../../shared/pipes/center-ellipses.pipe'; +import { ColumnNameTranslatePipe } from '../../../shared/pipes/column-name-translate.pipe'; +import { AlertSeverityDirective } from '../../../shared/directives/alert-severity.directive'; +import { MetronDialogBox } from '../../../shared/metron-dialog-box'; +import { SearchService } from '../../../service/search.service'; +import { UpdateService } from '../../../service/update.service'; +import { GlobalConfigService } from '../../../service/global-config.service'; +import { MetaAlertService } from '../../../service/meta-alert.service'; + +@Component({selector: 'metron-table-pagination', template: ''}) +class MetronTablePaginationComponent { + @Input() pagination = 0; +} describe('TableViewComponent', () => { let component: TableViewComponent; let fixture: ComponentFixture<TableViewComponent>; beforeEach(async(() => { + // FIXME: mock all the unnecessary dependencies TestBed.configureTestingModule({ - declarations: [ TableViewComponent ] + imports: [ HttpModule ], + providers: [ + SearchService, + UpdateService, + GlobalConfigService, + MetaAlertService, + MetronDialogBox, + ], + declarations: [ + MetronTableDirective, + MetronSorterComponent, + CenterEllipsesPipe, + ColumnNameTranslatePipe, + AlertSeverityDirective, + MetronTablePaginationComponent, + TableViewComponent, + ] }) - .compileComponents(); + .compileComponents() + .then(() => { + fixture = TestBed.createComponent(TableViewComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); })); - beforeEach(() => { - fixture = TestBed.createComponent(TableViewComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - it('should be created', () => { expect(component).toBeTruthy(); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.ts b/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.ts index 4d915cd..91cae3e 100644 --- a/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.ts +++ b/metron-interface/metron-alerts/src/app/alerts/alerts-list/table-view/table-view.component.ts @@ -17,7 +17,6 @@ */ import { Component, Input, Output, EventEmitter, OnChanges, SimpleChanges, OnInit, OnDestroy } from '@angular/core'; -import {Router} from '@angular/router'; import { Subscription } from 'rxjs/Rx'; import {Pagination} from '../../../model/pagination'; @@ -30,8 +29,6 @@ import {QueryBuilder} from '../query-builder'; import {Sort} from '../../../utils/enums'; import {Filter} from '../../../model/filter'; import {AlertSource} from '../../../model/alert-source'; -import {PatchRequest} from '../../../model/patch-request'; -import {Patch} from '../../../model/patch'; import {UpdateService} from '../../../service/update.service'; import {MetaAlertService} from '../../../service/meta-alert.service'; import {MetaAlertAddRemoveRequest} from '../../../model/meta-alert-add-remove-request'; @@ -50,7 +47,6 @@ export enum MetronAlertDisplayState { export class TableViewComponent implements OnInit, OnChanges, OnDestroy { - router: Router; searchService: SearchService; updateService: UpdateService; isStatusFieldPresent = false; @@ -75,13 +71,11 @@ export class TableViewComponent implements OnInit, OnChanges, OnDestroy { @Output() onShowConfigureTable = new EventEmitter<Alert>(); @Output() onSelectedAlertsChange = new EventEmitter< Alert[]>(); - constructor(router: Router, - searchService: SearchService, + constructor(searchService: SearchService, metronDialogBox: MetronDialogBox, updateService: UpdateService, metaAlertService: MetaAlertService, globalConfigService: GlobalConfigService) { - this.router = router; this.searchService = searchService; this.metronDialogBox = metronDialogBox; this.updateService = updateService; http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.spec.ts b/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.spec.ts index 8a50404..c11cd2f 100644 --- a/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.spec.ts @@ -1,6 +1,19 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { HttpModule } from '@angular/http'; import { TreeViewComponent } from './tree-view.component'; +import { AlertSeverityHexagonDirective } from '../../../shared/directives/alert-severity-hexagon.directive'; +import { CenterEllipsesPipe } from '../../../shared/pipes/center-ellipses.pipe'; +import { MetronTableDirective } from '../../../shared/metron-table/metron-table.directive'; +import { MetronSorterComponent } from '../../../shared/metron-table/metron-sorter'; +import { ColumnNameTranslatePipe } from '../../../shared/pipes/column-name-translate.pipe'; +import { AlertSeverityDirective } from '../../../shared/directives/alert-severity.directive'; +import { MetronTablePaginationComponent } from '../../../shared/metron-table/metron-table-pagination/metron-table-pagination.component'; +import { SearchService } from '../../../service/search.service'; +import { MetronDialogBox } from '../../../shared/metron-dialog-box'; +import { UpdateService } from '../../../service/update.service'; +import { GlobalConfigService } from '../../../service/global-config.service'; +import { MetaAlertService } from '../../../service/meta-alert.service'; describe('TreeViewComponent', () => { let component: TreeViewComponent; @@ -8,7 +21,24 @@ describe('TreeViewComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ TreeViewComponent ] + imports: [ HttpModule ], + providers: [ + SearchService, + UpdateService, + GlobalConfigService, + MetaAlertService, + MetronDialogBox, + ], + declarations: [ + MetronTableDirective, + MetronSorterComponent, + MetronTablePaginationComponent, + AlertSeverityHexagonDirective, + AlertSeverityDirective, + CenterEllipsesPipe, + ColumnNameTranslatePipe, + TreeViewComponent, + ] }) .compileComponents(); })); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.ts b/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.ts index 7b2e62c..9a67cf2 100644 --- a/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.ts +++ b/metron-interface/metron-alerts/src/app/alerts/alerts-list/tree-view/tree-view.component.ts @@ -17,7 +17,6 @@ */ import { Component, OnInit, OnChanges, SimpleChanges, OnDestroy, Input } from '@angular/core'; -import {Router} from '@angular/router'; import {Subscription, Observable} from 'rxjs/Rx'; import {TableViewComponent} from '../table-view/table-view.component'; @@ -55,13 +54,12 @@ export class TreeViewComponent extends TableViewComponent implements OnInit, OnC alertsChangedSubscription: Subscription; configSubscription: Subscription; - constructor(router: Router, - searchService: SearchService, + constructor(searchService: SearchService, metronDialogBox: MetronDialogBox, updateService: UpdateService, metaAlertService: MetaAlertService, globalConfigService: GlobalConfigService) { - super(router, searchService, metronDialogBox, updateService, metaAlertService, globalConfigService); + super(searchService, metronDialogBox, updateService, metaAlertService, globalConfigService); } addAlertChangedListner() { http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/alerts/configure-rows/configure-rows.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/alerts/configure-rows/configure-rows.component.spec.ts b/metron-interface/metron-alerts/src/app/alerts/configure-rows/configure-rows.component.spec.ts index 65b704a..b4a307f 100644 --- a/metron-interface/metron-alerts/src/app/alerts/configure-rows/configure-rows.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/alerts/configure-rows/configure-rows.component.spec.ts @@ -16,8 +16,14 @@ * limitations under the License. */ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { Injectable } from '@angular/core'; import { ConfigureRowsComponent } from './configure-rows.component'; +import { ConfigureTableService } from '../../service/configure-table.service'; +import { SwitchComponent } from '../../shared/switch/switch.component'; + +@Injectable() +class ConfigureTableServiceStub {} describe('ConfigureRowsComponent', () => { let component: ConfigureRowsComponent; @@ -25,7 +31,13 @@ describe('ConfigureRowsComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ ConfigureRowsComponent ] + declarations: [ + ConfigureRowsComponent, + SwitchComponent + ], + providers: [ + { provide: ConfigureTableService, useValue: ConfigureTableServiceStub } + ] }) .compileComponents(); })); @@ -36,4 +48,8 @@ describe('ConfigureRowsComponent', () => { fixture.detectChanges(); }); + it('should be created', () => { + expect(component).toBeTruthy(); + }); + }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/alerts/save-search/save-search.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/alerts/save-search/save-search.component.spec.ts b/metron-interface/metron-alerts/src/app/alerts/save-search/save-search.component.spec.ts index 3ff673d..b47caca 100644 --- a/metron-interface/metron-alerts/src/app/alerts/save-search/save-search.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/alerts/save-search/save-search.component.spec.ts @@ -18,6 +18,10 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { SaveSearchComponent } from './save-search.component'; +import { FormsModule } from '@angular/forms'; +import { Router } from '@angular/router'; +import { SaveSearchService } from '../../service/save-search.service'; +import { MetronDialogBox } from '../../shared/metron-dialog-box'; describe('SaveSearchComponent', () => { let component: SaveSearchComponent; @@ -25,6 +29,14 @@ describe('SaveSearchComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ + imports: [ + FormsModule + ], + providers: [ + MetronDialogBox, + { provide: Router, useValue: {} }, + { provide: SaveSearchService, useValue: {} } + ], declarations: [ SaveSearchComponent ] }) .compileComponents(); @@ -35,4 +47,8 @@ describe('SaveSearchComponent', () => { component = fixture.componentInstance; fixture.detectChanges(); }); + + it('should be created', () => { + expect(component).toBeTruthy(); + }); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/alerts/saved-searches/saved-searches.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/alerts/saved-searches/saved-searches.component.spec.ts b/metron-interface/metron-alerts/src/app/alerts/saved-searches/saved-searches.component.spec.ts index 7794f4c..ce878ee 100644 --- a/metron-interface/metron-alerts/src/app/alerts/saved-searches/saved-searches.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/alerts/saved-searches/saved-searches.component.spec.ts @@ -16,8 +16,16 @@ * limitations under the License. */ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { Component, Input } from '@angular/core'; import { SavedSearchesComponent } from './saved-searches.component'; +import { CollapseComponent } from '../../shared/collapse/collapse.component'; +import { CenterEllipsesPipe } from '../../shared/pipes/center-ellipses.pipe'; +import { ColumnNameTranslatePipe } from '../../shared/pipes/column-name-translate.pipe'; +import { Router } from '@angular/router'; +import { SaveSearchService } from '../../service/save-search.service'; +import { MetronDialogBox } from '../../shared/metron-dialog-box'; +import { Observable } from 'rxjs'; describe('SavedSearchesComponent', () => { let component: SavedSearchesComponent; @@ -25,7 +33,20 @@ describe('SavedSearchesComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ SavedSearchesComponent ] + providers: [ + { provide: Router, useValue: {} }, + { provide: SaveSearchService, useValue: { + listSavedSearches: jasmine.createSpy('listSavedSearches').and.returnValue(Observable.of([])), + listRecentSearches: jasmine.createSpy('listRecentSearches').and.returnValue(Observable.of([])), + } }, + MetronDialogBox + ], + declarations: [ + SavedSearchesComponent, + CollapseComponent, + CenterEllipsesPipe, + ColumnNameTranslatePipe + ] }) .compileComponents(); })); @@ -35,4 +56,8 @@ describe('SavedSearchesComponent', () => { component = fixture.componentInstance; fixture.detectChanges(); }); + + it('should be created', () => { + expect(component).toBeTruthy(); + }); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/app.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/app.component.spec.ts b/metron-interface/metron-alerts/src/app/app.component.spec.ts index cfccb7d..8eee24a 100644 --- a/metron-interface/metron-alerts/src/app/app.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/app.component.spec.ts @@ -15,17 +15,39 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { TestBed, async } from '@angular/core/testing'; +import { TestBed, async, ComponentFixture } from '@angular/core/testing'; import { AppComponent } from './app.component'; +import { Component } from '@angular/core'; +import { AuthenticationService } from './service/authentication.service'; +import { Observable } from 'rxjs'; + +@Component({ selector: 'router-outlet', template: '' }) +class RouterOutletStubComponent {} describe('AppComponent', () => { + let component: AppComponent; + let fixture: ComponentFixture<AppComponent>; + beforeEach(async(() => { TestBed.configureTestingModule({ + providers: [ + { provide: AuthenticationService, useValue: { onLoginEvent: Observable.of(true) } } + ], declarations: [ - AppComponent + AppComponent, + RouterOutletStubComponent, ], }).compileComponents(); })); + beforeEach(() => { + fixture = TestBed.createComponent(AppComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should be created', () => { + expect(component).toBeTruthy(); + }); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/login/login.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/login/login.component.spec.ts b/metron-interface/metron-alerts/src/app/login/login.component.spec.ts index 0cf3554..e02b65f 100644 --- a/metron-interface/metron-alerts/src/app/login/login.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/login/login.component.spec.ts @@ -15,12 +15,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import {async, inject, TestBed} from '@angular/core/testing'; -import {AuthenticationService} from '../service/authentication.service'; -import {LoginComponent} from './login.component'; +import { async, inject, TestBed } from '@angular/core/testing'; +import { AuthenticationService } from '../service/authentication.service'; +import { LoginComponent } from './login.component'; +import { ActivatedRoute, Params } from '@angular/router'; +import { Observable } from 'rxjs'; class MockAuthenticationService { - public login(username: string, password: string, onError): void { if (username === 'success') { onError({status: 200}); @@ -32,34 +33,39 @@ class MockAuthenticationService { } } +class MockActivedRoutes { + queryParams: Observable<Params> = Observable.of({ + sessionExpired: false + }) +} + describe('LoginComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ providers: [ LoginComponent, - {provide: AuthenticationService, useClass: MockAuthenticationService} + { provide: AuthenticationService, useClass: MockAuthenticationService }, + { provide: ActivatedRoute, useClass: MockActivedRoutes } ] - }) - .compileComponents(); - + }).compileComponents(); })); - it('can instantiate login component', inject([LoginComponent], (loginComponent: LoginComponent) => { - expect(loginComponent instanceof LoginComponent).toBe(true); + it('should be created', inject([LoginComponent], (loginComponent: LoginComponent) => { + expect(loginComponent instanceof LoginComponent).toBe(true); })); - it('can instantiate login component', inject([LoginComponent], (loginComponent: LoginComponent) => { - loginComponent.user = 'success'; - loginComponent.password = 'success'; - loginComponent.login(); - expect(loginComponent.loginFailure).toEqual(''); - + it('should show login error msg if login fail', inject([LoginComponent], (loginComponent: LoginComponent) => { loginComponent.user = 'failure'; loginComponent.password = 'failure'; loginComponent.login(); expect(loginComponent.loginFailure).toEqual('Login failed for failure'); - })); + it('should not show error msg if login success', inject([LoginComponent], (loginComponent: LoginComponent) => { + loginComponent.user = 'success'; + loginComponent.password = 'success'; + loginComponent.login(); + expect(loginComponent.loginFailure).toEqual(''); + })); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.spec.ts b/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.spec.ts index f6f32d1..da8ddb6 100644 --- a/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.spec.ts @@ -18,6 +18,8 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { CollapseComponent } from './collapse.component'; +import { CenterEllipsesPipe } from '../pipes/center-ellipses.pipe'; +import { ColumnNameTranslatePipe } from '../pipes/column-name-translate.pipe'; describe('CollapseComponent', () => { let component: CollapseComponent; @@ -25,7 +27,11 @@ describe('CollapseComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ CollapseComponent ] + declarations: [ + CollapseComponent, + CenterEllipsesPipe, + ColumnNameTranslatePipe + ] }) .compileComponents(); })); @@ -36,4 +42,8 @@ describe('CollapseComponent', () => { fixture.detectChanges(); }); + it('should be created', () => { + expect(component).toBeTruthy(); + }); + }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.ts b/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.ts index 4d609df..cb368a4 100644 --- a/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.ts +++ b/metron-interface/metron-alerts/src/app/shared/collapse/collapse.component.ts @@ -18,7 +18,7 @@ import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core'; import 'bootstrap'; -import {CollapseComponentData} from './collapse-component-data'; +import { CollapseComponentData } from './collapse-component-data'; @Component({ selector: 'metron-collapse', http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/date-picker/date-picker.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/date-picker/date-picker.component.spec.ts b/metron-interface/metron-alerts/src/app/shared/date-picker/date-picker.component.spec.ts index 994ac02..673e598 100644 --- a/metron-interface/metron-alerts/src/app/shared/date-picker/date-picker.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/date-picker/date-picker.component.spec.ts @@ -1,6 +1,7 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { DatePickerComponent } from './date-picker.component'; +import { FormsModule } from '@angular/forms'; describe('DatePickerComponent', () => { let component: DatePickerComponent; @@ -8,6 +9,9 @@ describe('DatePickerComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ + imports: [ + FormsModule + ], declarations: [ DatePickerComponent ] }) .compileComponents(); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/directives/alert-search.directive.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/directives/alert-search.directive.spec.ts b/metron-interface/metron-alerts/src/app/shared/directives/alert-search.directive.spec.ts deleted file mode 100644 index f8debdb..0000000 --- a/metron-interface/metron-alerts/src/app/shared/directives/alert-search.directive.spec.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -describe('AlertSearchDirective', () => { - -}); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/directives/alert-severity-hexagon.directive.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/directives/alert-severity-hexagon.directive.spec.ts b/metron-interface/metron-alerts/src/app/shared/directives/alert-severity-hexagon.directive.spec.ts index b1b3254..d0909b7 100644 --- a/metron-interface/metron-alerts/src/app/shared/directives/alert-severity-hexagon.directive.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/directives/alert-severity-hexagon.directive.spec.ts @@ -1,8 +1,9 @@ +import { ElementRef } from '@angular/core'; import { AlertSeverityHexagonDirective } from './alert-severity-hexagon.directive'; describe('AlertSeverityHexagonDirective', () => { - it('should create an instance', () => { - const directive = new AlertSeverityHexagonDirective(); + it('should be created', () => { + const directive = new AlertSeverityHexagonDirective(new ElementRef({})); expect(directive).toBeTruthy(); }); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/directives/nav-content.directive.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/directives/nav-content.directive.spec.ts b/metron-interface/metron-alerts/src/app/shared/directives/nav-content.directive.spec.ts index ec64f24..f3a7f2f 100644 --- a/metron-interface/metron-alerts/src/app/shared/directives/nav-content.directive.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/directives/nav-content.directive.spec.ts @@ -15,11 +15,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +import { ElementRef } from '@angular/core'; + import { NavContentDirective } from './nav-content.directive'; describe('NavContentDirective', () => { - it('should create an instance', () => { - const directive = new NavContentDirective(); + it('should be created', () => { + const directive = new NavContentDirective(new ElementRef({})); expect(directive).toBeTruthy(); }); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/list-group/list-group.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/list-group/list-group.component.spec.ts b/metron-interface/metron-alerts/src/app/shared/list-group/list-group.component.spec.ts index f9916e6..de28efc 100644 --- a/metron-interface/metron-alerts/src/app/shared/list-group/list-group.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/list-group/list-group.component.spec.ts @@ -36,7 +36,7 @@ describe('ListGroupComponent', () => { fixture.detectChanges(); }); - it('should create', () => { + it('should be created', () => { expect(component).toBeTruthy(); }); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/metron-table/metron-sorter/metron-sorter.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/metron-table/metron-sorter/metron-sorter.component.spec.ts b/metron-interface/metron-alerts/src/app/shared/metron-table/metron-sorter/metron-sorter.component.spec.ts index bec9378..d23e5a0 100644 --- a/metron-interface/metron-alerts/src/app/shared/metron-table/metron-sorter/metron-sorter.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/metron-table/metron-sorter/metron-sorter.component.spec.ts @@ -18,19 +18,21 @@ /* tslint:disable:no-unused-variable */ // directiveSelectorNameRule -import {MetronSorterComponent} from './metron-sorter.component'; -import {MetronTableDirective} from '../metron-table.directive'; +import { ElementRef } from '@angular/core'; -describe('Component: MetronSorter', () => { +import { MetronSorterComponent } from './metron-sorter.component'; +import { MetronTableDirective } from '../metron-table.directive'; - it('should create an instance', () => { - let metronTable = new MetronTableDirective(); +describe('MetronSorterComponent', () => { + + it('should be created', () => { + let metronTable = new MetronTableDirective(new ElementRef({})); let component = new MetronSorterComponent(metronTable); expect(component).toBeTruthy(); }); it('should set the variables according to sorter', () => { - let metronTable = new MetronTableDirective(); + let metronTable = new MetronTableDirective(new ElementRef({})); let sorter1 = new MetronSorterComponent(metronTable); let sorter2 = new MetronSorterComponent(metronTable); let sorter3 = new MetronSorterComponent(metronTable); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/metron-table/metron-table-pagination/metron-table-pagination.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/metron-table/metron-table-pagination/metron-table-pagination.component.spec.ts b/metron-interface/metron-alerts/src/app/shared/metron-table/metron-table-pagination/metron-table-pagination.component.spec.ts index 3a519b6..edb78c9 100644 --- a/metron-interface/metron-alerts/src/app/shared/metron-table/metron-table-pagination/metron-table-pagination.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/metron-table/metron-table-pagination/metron-table-pagination.component.spec.ts @@ -36,7 +36,7 @@ describe('MetronTablePaginationComponent', () => { fixture.detectChanges(); }); - it('should create', () => { + it('should be created', () => { expect(component).toBeTruthy(); }); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/pipes/center-ellipses.pipe.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/pipes/center-ellipses.pipe.spec.ts b/metron-interface/metron-alerts/src/app/shared/pipes/center-ellipses.pipe.spec.ts index 5a89426..c2196f3 100644 --- a/metron-interface/metron-alerts/src/app/shared/pipes/center-ellipses.pipe.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/pipes/center-ellipses.pipe.spec.ts @@ -18,7 +18,7 @@ import { CenterEllipsesPipe } from './center-ellipses.pipe'; describe('CenterEllipsesPipe', () => { - it('create an instance', () => { + it('should be created', () => { const pipe = new CenterEllipsesPipe(); expect(pipe).toBeTruthy(); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/pipes/column-name-translate.pipe.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/pipes/column-name-translate.pipe.spec.ts b/metron-interface/metron-alerts/src/app/shared/pipes/column-name-translate.pipe.spec.ts index 4a4e0bf..13f97f9 100644 --- a/metron-interface/metron-alerts/src/app/shared/pipes/column-name-translate.pipe.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/pipes/column-name-translate.pipe.spec.ts @@ -18,7 +18,7 @@ import { ColumnNameTranslatePipe } from './column-name-translate.pipe'; describe('ColumnNameTranslatePipe', () => { - it('create an instance', () => { + it('should be created', () => { const pipe = new ColumnNameTranslatePipe(); expect(pipe).toBeTruthy(); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/pipes/map-keys.pipe.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/pipes/map-keys.pipe.spec.ts b/metron-interface/metron-alerts/src/app/shared/pipes/map-keys.pipe.spec.ts index 17cfef7..193ed66 100644 --- a/metron-interface/metron-alerts/src/app/shared/pipes/map-keys.pipe.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/pipes/map-keys.pipe.spec.ts @@ -1,7 +1,7 @@ import { MapKeysPipe } from './map-keys.pipe'; describe('MapKeysPipe', () => { - it('create an instance', () => { + it('should be created', () => { const pipe = new MapKeysPipe(); expect(pipe).toBeTruthy(); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/switch/switch.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/switch/switch.component.spec.ts b/metron-interface/metron-alerts/src/app/shared/switch/switch.component.spec.ts index 323013e..14a0e25 100644 --- a/metron-interface/metron-alerts/src/app/shared/switch/switch.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/switch/switch.component.spec.ts @@ -36,7 +36,7 @@ describe('SwitchComponent', () => { fixture.detectChanges(); }); - it('should create', () => { + it('should be created', () => { expect(component).toBeTruthy(); }); }); http://git-wip-us.apache.org/repos/asf/metron/blob/fc9ff853/metron-interface/metron-alerts/src/app/shared/time-range/time-range.component.spec.ts ---------------------------------------------------------------------- diff --git a/metron-interface/metron-alerts/src/app/shared/time-range/time-range.component.spec.ts b/metron-interface/metron-alerts/src/app/shared/time-range/time-range.component.spec.ts index 1e35979..157bf52 100644 --- a/metron-interface/metron-alerts/src/app/shared/time-range/time-range.component.spec.ts +++ b/metron-interface/metron-alerts/src/app/shared/time-range/time-range.component.spec.ts @@ -1,6 +1,9 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { TimeRangeComponent } from './time-range.component'; +import { DatePickerComponent } from '../date-picker/date-picker.component'; +import { MapKeysPipe } from '../pipes/map-keys.pipe'; +import { FormsModule } from '@angular/forms'; describe('TimeRangeComponent', () => { let component: TimeRangeComponent; @@ -8,7 +11,14 @@ describe('TimeRangeComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ TimeRangeComponent ] + imports: [ + FormsModule + ], + declarations: [ + TimeRangeComponent, + DatePickerComponent, + MapKeysPipe + ] }) .compileComponents(); }));
