1
1
import type * as Neo4jType from 'neo4j-driver' ;
2
2
import * as Neo4jMockImport from 'neo4j-driver' ;
3
- import { NeoVisEvents } from '../src/events' ;
3
+ import { EventFunctionTypes , NeoVisEvents } from '../src/events' ;
4
4
import * as Neo4jCore from 'neo4j-driver-core' ;
5
5
6
6
// eslint-disable-next-line jest/no-mocks-import
@@ -18,11 +18,11 @@ export function clearIdCounter(): void {
18
18
counter = 1 ;
19
19
}
20
20
21
- export function makeNode ( labels : string [ ] , properties : any = { } ) : Neo4jCore . Node < number > {
21
+ export function makeNode ( labels : string [ ] , properties : unknown = { } ) : Neo4jCore . Node < number > {
22
22
return new Neo4jCore . Node ( counter ++ , labels , properties ) ;
23
23
}
24
24
25
- export function makeRelationship ( type : string , startNode : Neo4jCore . Node < number > , endNode : Neo4jCore . Node < number > , properties : any = { } ) : Neo4jCore . Relationship < number > {
25
+ export function makeRelationship ( type : string , startNode : Neo4jCore . Node < number > , endNode : Neo4jCore . Node < number > , properties : unknown = { } ) : Neo4jCore . Relationship < number > {
26
26
return new Neo4jCore . Relationship ( counter ++ , startNode . identity , endNode . identity , type , properties ) ;
27
27
}
28
28
@@ -38,7 +38,7 @@ export function makePathFromNodes(nodes: Neo4jType.Node<number>[], relationshipT
38
38
return new Neo4jCore . Path ( nodes [ 0 ] , nodes [ nodes . length - 1 ] , pathSegments ) ;
39
39
}
40
40
41
- export function makeRecord ( parameters : any [ ] ) : Neo4jCore . Record {
41
+ export function makeRecord < T > ( parameters : T [ ] ) : Neo4jCore . Record < { [ key : string ] : unknown } > {
42
42
const recordKeys = parameters . map ( ( _ , index ) => index . toString ( ) ) ;
43
43
return new Neo4jCore . Record ( recordKeys , parameters ) ;
44
44
}
@@ -57,36 +57,36 @@ export function assertEdges(neovis: NeoVis, edges: Neo4jType.Relationship<number
57
57
} ) ;
58
58
}
59
59
60
- export function mockNormalRunSubscribe ( records : Neo4jType . Record < any > [ ] = [ ] ) : void {
60
+ export function mockNormalRunSubscribe ( records : Neo4jType . Record < { [ key : string ] : unknown } > [ ] = [ ] ) : void {
61
61
Neo4jMock . mockSessionRun . mockImplementation ( ( ) => {
62
- const observablePromise : Partial < ObservablePromise < { records : Neo4jType . Record < any > [ ] } > > = Promise . resolve ( { records } ) ;
62
+ const observablePromise : Partial < ObservablePromise < { records : Neo4jType . Record < { [ key : string ] : unknown } > [ ] } > > = Promise . resolve ( { records } ) ;
63
63
observablePromise . subscribe = ( { onNext, onCompleted } ) => {
64
64
records . forEach ( onNext ) ;
65
65
onCompleted ( ) ;
66
66
} ;
67
- return observablePromise as ObservablePromise < { records : Neo4jType . Record < any > [ ] } > ;
67
+ return observablePromise as ObservablePromise < { records : Neo4jType . Record < unknown > [ ] } > ;
68
68
} ) ;
69
69
}
70
70
71
- export function mockFullRunSubscribe ( cypherIdsAndAnswers : Record < string , { default ?: Neo4jType . Record < any > [ ] , [ id : number ] : Neo4jType . Record < any > [ ] } > ) : void {
72
- Neo4jMock . mockSessionRun . mockImplementation ( ( cypher : string , parameters : Record < string , any > ) => {
71
+ export function mockFullRunSubscribe ( cypherIdsAndAnswers : Record < string , { default ?: Neo4jType . Record < { [ key : string ] : unknown } > [ ] , [ id : number ] : Neo4jType . Record < { [ key : string ] : unknown } > [ ] } > ) : void {
72
+ Neo4jMock . mockSessionRun . mockImplementation ( ( cypher : string , parameters : { id : number } ) => {
73
73
if ( ! cypherIdsAndAnswers [ cypher ] ) {
74
74
throw new Error ( `the cypher '${ cypher } ' was not expected` ) ;
75
75
}
76
76
if ( ! cypherIdsAndAnswers [ cypher ] . default && ! cypherIdsAndAnswers [ cypher ] [ parameters . id ] ) {
77
77
throw new Error ( `the id '${ parameters . id } ' was not expected for cypher ${ cypher } ` ) ;
78
78
}
79
79
const records = cypherIdsAndAnswers [ cypher ] . default || cypherIdsAndAnswers [ cypher ] [ parameters . id ] ;
80
- const observablePromise : Partial < ObservablePromise < { records : Neo4jType . Record < any > [ ] } > > = Promise . resolve ( { records } ) ;
80
+ const observablePromise : Partial < ObservablePromise < { records : Neo4jType . Record < { [ key : string ] : unknown } > [ ] } > > = Promise . resolve ( { records } ) ;
81
81
observablePromise . subscribe = ( { onNext, onCompleted } ) => {
82
82
records . forEach ( onNext ) ;
83
83
onCompleted ( ) ;
84
84
} ;
85
- return observablePromise as ObservablePromise < { records : Neo4jType . Record < any > [ ] } > ;
85
+ return observablePromise as ObservablePromise < { records : Neo4jType . Record < unknown > [ ] } > ;
86
86
} ) ;
87
87
}
88
88
89
89
90
- export function neovisRenderDonePromise ( neovis : NeoVis ) : Promise < void > {
90
+ export function neovisRenderDonePromise ( neovis : NeoVis ) : Promise < Parameters < EventFunctionTypes [ NeoVisEvents . CompletionEvent ] > [ 0 ] > {
91
91
return new Promise ( res => neovis . registerOnEvent ( NeoVisEvents . CompletionEvent , res ) ) ;
92
92
}
0 commit comments