mirror of
https://github.com/GNS3/gns3-web-ui.git
synced 2025-05-10 04:22:56 +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) {
|
duplicate(server: Server, node: Node) {
|
||||||
return of(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 {
|
export class MockedDrawingService {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user