Skip to content
This repository was archived by the owner on May 14, 2025. It is now read-only.

Commit 053ebbf

Browse files
BoykoAlexaclement
authored andcommitted
Composed Tasks Flo editor tests
1 parent 009900c commit 053ebbf

18 files changed

+728
-231
lines changed

ui/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
"ngx-pagination": "3.0.1",
3838
"rxjs": "5.5.2",
3939
"sockjs-client": "1.1.4",
40-
"spring-flo": "git://github.com/spring-projects/spring-flo#0ee041142d50044512b091b504e9ab9df3ffcd48",
40+
"spring-flo": "0.7.0",
4141
"stompjs": "2.3.3",
4242
"tixif-ngx-busy": "0.0.5",
4343
"zone.js": "0.8.18",

ui/src/app/shared/flo/decoration/decoration.component.spec.ts

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
import { Shapes } from 'spring-flo';
22
import { dia } from 'jointjs';
33
import { RenderService } from '../../../streams/flo/render.service';
4-
import { MockMetamodelService } from '../../../streams/flo/mocks/mock-metamodel.service';
54
import { DecorationComponent } from './decoration.component';
65
import { Constants } from 'spring-flo';
6+
import { MockSharedAppService } from '../../../tests/mocks/shared-app';
7+
import { MetamodelService } from '../../../streams/flo/metamodel.service';
8+
import { async } from '@angular/core/testing';
79

810
import * as _joint from 'jointjs';
911
const joint: any = _joint;
@@ -16,22 +18,24 @@ function createMockView(cell: dia.Element): any {
1618

1719
describe('DecorationComponent Tests.', () => {
1820

19-
const MOCK_METAMODEL_SERVICE = new MockMetamodelService();
20-
const RENDER_SERVICE = new RenderService(MOCK_METAMODEL_SERVICE);
21+
const METAMODEL_SERVICE = new MetamodelService(new MockSharedAppService());
22+
const RENDER_SERVICE = new RenderService(METAMODEL_SERVICE);
2123

2224
let graph: dia.Graph;
2325
let component: DecorationComponent;
2426
let parentNode: dia.Element;
2527

26-
beforeEach(() => {
27-
graph = new joint.dia.Graph();
28-
component = new DecorationComponent();
29-
parentNode = Shapes.Factory.createNode({
30-
metadata: MOCK_METAMODEL_SERVICE.data.get('source').get('http'),
31-
renderer: RENDER_SERVICE,
32-
graph: graph
28+
beforeEach(async(() => {
29+
METAMODEL_SERVICE.load().then(metamodel => {
30+
graph = new joint.dia.Graph();
31+
component = new DecorationComponent();
32+
parentNode = Shapes.Factory.createNode({
33+
metadata: metamodel.get('source').get('http'),
34+
renderer: RENDER_SERVICE,
35+
graph: graph
36+
});
3337
});
34-
});
38+
}));
3539

3640
it('No decoration view', () => {
3741
expect(component.kind).toEqual('');

ui/src/app/shared/flo/graph-view/graph-view.component.spec.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
import {async, ComponentFixture, TestBed} from '@angular/core/testing';
22
import { GraphViewComponent } from './graph-view.component';
33
import { FloModule } from 'spring-flo';
4-
import { MockMetamodelService } from '../../../streams/flo/mocks/mock-metamodel.service';
54
import { RenderService } from '../../../streams/flo/render.service';
5+
import { MockSharedAppService } from '../../../tests/mocks/shared-app';
6+
import { MetamodelService } from '../../../streams/flo/metamodel.service';
67

78
/**
89
* Test {@link GraphViewComponent}.
@@ -30,7 +31,7 @@ describe('StreamGraphViewComponent', () => {
3031
beforeEach(() => {
3132
fixture = TestBed.createComponent(GraphViewComponent);
3233
component = fixture.componentInstance;
33-
const metamodel = new MockMetamodelService();
34+
const metamodel = new MetamodelService(new MockSharedAppService());
3435
component.metamodel = metamodel;
3536
component.renderer = new RenderService(metamodel);
3637
});

ui/src/app/shared/flo/handle/handle.component.spec.ts

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
import { Shapes } from 'spring-flo';
22
import { dia } from 'jointjs';
33
import { RenderService } from '../../../streams/flo/render.service';
4-
import { MockMetamodelService } from '../../../streams/flo/mocks/mock-metamodel.service';
54
import { HandleComponent } from './handle.component';
65
import { Constants } from 'spring-flo';
6+
import { MockSharedAppService } from '../../../tests/mocks/shared-app';
7+
import { MetamodelService } from '../../../streams/flo/metamodel.service';
8+
import { async } from '@angular/core/testing';
79

810
import * as _joint from 'jointjs';
911
const joint: any = _joint;
@@ -16,22 +18,24 @@ function createMockView(cell: dia.Element): any {
1618

1719
describe('HandleComponent Tests.', () => {
1820

19-
const MOCK_METAMODEL_SERVICE = new MockMetamodelService();
20-
const RENDER_SERVICE = new RenderService(MOCK_METAMODEL_SERVICE);
21+
const METAMODEL_SERVICE = new MetamodelService(new MockSharedAppService());
22+
const RENDER_SERVICE = new RenderService(METAMODEL_SERVICE);
2123

2224
let graph: dia.Graph;
2325
let component: HandleComponent;
2426
let parentNode: dia.Element;
2527

26-
beforeEach(() => {
27-
graph = new joint.dia.Graph();
28-
component = new HandleComponent();
29-
parentNode = Shapes.Factory.createNode({
30-
metadata: MOCK_METAMODEL_SERVICE.data.get('source').get('http'),
31-
renderer: RENDER_SERVICE,
32-
graph: graph
28+
beforeEach(async(() => {
29+
METAMODEL_SERVICE.load().then(metamodel => {
30+
graph = new joint.dia.Graph();
31+
component = new HandleComponent();
32+
parentNode = Shapes.Factory.createNode({
33+
metadata: metamodel.get('source').get('http'),
34+
renderer: RENDER_SERVICE,
35+
graph: graph
36+
});
3337
});
34-
});
38+
}));
3539

3640
it('No handle view', () => {
3741
expect(component.placement).toEqual('top');

ui/src/app/streams/flo/editor.service.spec.ts

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
22
import { FloModule, EditorComponent } from 'spring-flo';
3-
import { MockMetamodelService } from '../flo/mocks/mock-metamodel.service';
43
import { MetamodelService } from '../flo/metamodel.service';
54
import { RenderService } from '../flo/render.service';
65

@@ -13,6 +12,7 @@ import * as _joint from 'jointjs';
1312
const joint: any = _joint;
1413

1514
import { EditorService } from './editor.service';
15+
import {MockSharedAppService} from '../../tests/mocks/shared-app';
1616

1717
describe('editor.service', () => {
1818
const editorService = new EditorService(null);
@@ -398,13 +398,15 @@ describe('editor.service', () => {
398398
describe('editor.service : Auto-Link', () => {
399399
let component: EditorComponent;
400400
let fixture: ComponentFixture<EditorComponent>;
401-
const metamodelService = new MockMetamodelService();
401+
const metamodelService = new MetamodelService(new MockSharedAppService());
402402
const renderService = new RenderService(metamodelService);
403403
const editorService = new EditorService(null);
404+
let metamodel: Map<string, Map<string, Flo.ElementMetadata>>;
404405

405406
let flo: Flo.EditorContext;
406407

407408
beforeEach(async(() => {
409+
metamodelService.load().then(data => metamodel = data);
408410
TestBed.configureTestingModule({
409411
imports: [
410412
FloModule
@@ -443,33 +445,33 @@ describe('editor.service : Auto-Link', () => {
443445
}
444446

445447
it('DnD on empty canvas', () => {
446-
dropOnCanvas(metamodelService.data.get('source').get('http'));
448+
dropOnCanvas(metamodel.get('source').get('http'));
447449
expect(flo.getGraph().getElements().length).toEqual(1);
448450
expect(flo.getGraph().getElements()[0].attr('metadata/name')).toEqual('http');
449451
});
450452

451453
it('Auto-Link: OFF. Drop processor with available source port', () => {
452-
flo.createNode(metamodelService.data.get('source').get('http'));
454+
flo.createNode(metamodel.get('source').get('http'));
453455
expect(flo.getGraph().getElements().length).toEqual(1);
454-
dropOnCanvas(metamodelService.data.get('processor').get('filter'));
456+
dropOnCanvas(metamodel.get('processor').get('filter'));
455457
expect(flo.getGraph().getElements().length).toEqual(2);
456458
expect(flo.getGraph().getLinks().length).toEqual(0);
457459
});
458460

459461
it('Auto-Link: ON. Drop processor with available source port', () => {
460462
flo.autolink = true;
461-
flo.createNode(metamodelService.data.get('source').get('http'));
463+
flo.createNode(metamodel.get('source').get('http'));
462464
expect(flo.getGraph().getElements().length).toEqual(1);
463-
dropOnCanvas(metamodelService.data.get('processor').get('filter'));
465+
dropOnCanvas(metamodel.get('processor').get('filter'));
464466
expect(flo.getGraph().getElements().length).toEqual(2);
465467
expect(flo.getGraph().getLinks().length).toEqual(1);
466468
});
467469

468470
it('Auto-Link: ON. Drop processor with sink on canvas', () => {
469471
flo.autolink = true;
470-
const sinkNode = flo.createNode(metamodelService.data.get('sink').get('null'));
472+
const sinkNode = flo.createNode(metamodel.get('sink').get('null'));
471473
expect(flo.getGraph().getElements().length).toEqual(1);
472-
dropOnCanvas(metamodelService.data.get('processor').get('filter'));
474+
dropOnCanvas(metamodel.get('processor').get('filter'));
473475
expect(flo.getGraph().getElements().length).toEqual(2);
474476
expect(flo.getGraph().getLinks().length).toEqual(1);
475477
const l = flo.getGraph().getLinks()[0];
@@ -479,8 +481,8 @@ describe('editor.service : Auto-Link', () => {
479481

480482
it('Auto-Link: ON. Drop processor but no available ports', () => {
481483
flo.autolink = true;
482-
const httpNode = flo.createNode(metamodelService.data.get('source').get('http'));
483-
const nullNode = flo.createNode(metamodelService.data.get('sink').get('null'));
484+
const httpNode = flo.createNode(metamodel.get('source').get('http'));
485+
const nullNode = flo.createNode(metamodel.get('sink').get('null'));
484486
flo.createLink({
485487
id: httpNode.id,
486488
selector: '.output-port',
@@ -492,15 +494,15 @@ describe('editor.service : Auto-Link', () => {
492494
}, null, null);
493495
expect(flo.getGraph().getElements().length).toEqual(2);
494496
expect(flo.getGraph().getLinks().length).toEqual(1);
495-
dropOnCanvas(metamodelService.data.get('processor').get('filter'));
497+
dropOnCanvas(metamodel.get('processor').get('filter'));
496498
expect(flo.getGraph().getElements().length).toEqual(3);
497499
expect(flo.getGraph().getLinks().length).toEqual(1);
498500
});
499501

500502
it('Auto-Link: ON. Drop processor available port has tap-link', () => {
501503
flo.autolink = true;
502-
const httpNode = flo.createNode(metamodelService.data.get('source').get('http'));
503-
const nullNode = flo.createNode(metamodelService.data.get('sink').get('null'));
504+
const httpNode = flo.createNode(metamodel.get('source').get('http'));
505+
const nullNode = flo.createNode(metamodel.get('sink').get('null'));
504506
flo.createLink({
505507
id: httpNode.id,
506508
selector: '.output-port',
@@ -513,19 +515,19 @@ describe('editor.service : Auto-Link', () => {
513515
expect(flo.getGraph().getElements().length).toEqual(2);
514516
expect(flo.getGraph().getLinks().length).toEqual(1);
515517
expect(flo.getGraph().getLinks().filter(l => l.attr('props/isTapLink')).length).toEqual(1);
516-
dropOnCanvas(metamodelService.data.get('processor').get('filter'));
518+
dropOnCanvas(metamodel.get('processor').get('filter'));
517519
expect(flo.getGraph().getElements().length).toEqual(3);
518520
expect(flo.getGraph().getLinks().length).toEqual(2);
519521
expect(flo.getGraph().getLinks().filter(l => !l.attr('props/isTapLink')).length).toEqual(1);
520522
});
521523

522524
it('Auto-Link: ON. More than one port available', () => {
523525
flo.autolink = true;
524-
flo.createNode(metamodelService.data.get('source').get('http'));
525-
flo.createNode(metamodelService.data.get('processor').get('filter'));
526+
flo.createNode(metamodel.get('source').get('http'));
527+
flo.createNode(metamodel.get('processor').get('filter'));
526528
expect(flo.getGraph().getElements().length).toEqual(2);
527529
expect(flo.getGraph().getLinks().length).toEqual(0);
528-
dropOnCanvas(metamodelService.data.get('processor').get('filter'));
530+
dropOnCanvas(metamodel.get('processor').get('filter'));
529531
expect(flo.getGraph().getElements().length).toEqual(3);
530532
expect(flo.getGraph().getLinks().length).toEqual(0);
531533
});

ui/src/app/streams/flo/mocks/mock-metamodel.service.ts

Lines changed: 0 additions & 144 deletions
This file was deleted.

0 commit comments

Comments
 (0)