mirror of
https://github.com/GNS3/gns3-web-ui.git
synced 2025-02-21 02:01:19 +00:00
Unit tests added
This commit is contained in:
parent
753649a321
commit
6a5aca2dcd
@ -0,0 +1,86 @@
|
||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { Server } from '../../../../models/server';
|
||||
import {
|
||||
MatDialogModule,
|
||||
MatFormFieldModule,
|
||||
MatDialogRef,
|
||||
MAT_DIALOG_DATA,
|
||||
MatSnackBarModule
|
||||
} from '@angular/material';
|
||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
import { ToasterService } from '../../../../services/toaster.service';
|
||||
import { of } from 'rxjs/internal/observable/of';
|
||||
import { ConfigEditorDialogComponent } from './config-editor.component';
|
||||
import { NodeService } from '../../../../services/node.service';
|
||||
import { FormsModule } from '@angular/forms';
|
||||
import { MockedNodeService } from '../../project-map.component.spec';
|
||||
import { Node } from '../../../../cartography/models/node';
|
||||
|
||||
describe('ConfigEditorDialogComponent', () => {
|
||||
let component: ConfigEditorDialogComponent;
|
||||
let fixture: ComponentFixture<ConfigEditorDialogComponent>;
|
||||
let server: Server;
|
||||
let node: Node;
|
||||
let toaster = {
|
||||
success: jasmine.createSpy('success')
|
||||
};
|
||||
let dialogRef = {
|
||||
close: jasmine.createSpy('close')
|
||||
};
|
||||
let mockedNodeService: MockedNodeService = new MockedNodeService();
|
||||
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [
|
||||
MatDialogModule,
|
||||
MatFormFieldModule,
|
||||
NoopAnimationsModule,
|
||||
MatSnackBarModule,
|
||||
FormsModule
|
||||
],
|
||||
providers: [
|
||||
{ provide: MatDialogRef, useValue: dialogRef },
|
||||
{ provide: MAT_DIALOG_DATA },
|
||||
{ provide: NodeService, useValue: mockedNodeService },
|
||||
{ provide: ToasterService, useValue: toaster }
|
||||
],
|
||||
declarations: [ConfigEditorDialogComponent]
|
||||
}).compileComponents();
|
||||
|
||||
server = new Server();
|
||||
server.host = 'localhost';
|
||||
server.port = 80;
|
||||
|
||||
node = new Node();
|
||||
node.name = 'sample name';
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(ConfigEditorDialogComponent);
|
||||
component = fixture.componentInstance;
|
||||
component.server = server;
|
||||
component.node = node;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should be created', () => {
|
||||
expect(fixture).toBeDefined();
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
|
||||
it('should call node service when save configuration chosen', () => {
|
||||
spyOn(mockedNodeService, 'saveConfiguration').and.returnValue(of('sample config'));
|
||||
|
||||
component.onSaveClick();
|
||||
|
||||
expect(mockedNodeService.saveConfiguration).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('should not call node service when save configuration chosen', () => {
|
||||
spyOn(mockedNodeService, 'saveConfiguration').and.returnValue(of('sample config'));
|
||||
|
||||
component.onCancelClick();
|
||||
|
||||
expect(mockedNodeService.saveConfiguration).not.toHaveBeenCalled();
|
||||
});
|
||||
});
|
@ -94,6 +94,14 @@ export class MockedNodeService {
|
||||
duplicate(server: Server, node: Node) {
|
||||
return of(node);
|
||||
}
|
||||
|
||||
getConfiguration(server: Server, node: Node) {
|
||||
return of('sample config');
|
||||
}
|
||||
|
||||
saveConfiguration(server: Server, node: Node, configuration: string) {
|
||||
return of(configuration);
|
||||
}
|
||||
}
|
||||
|
||||
export class MockedDrawingService {
|
||||
|
Loading…
x
Reference in New Issue
Block a user