@@ -21,29 +21,41 @@ class ElasticsearchClient {
2121
2222function mockElasticsearchMethod ( client , methodName , responeFilename , shouldError ) {
2323 var mockedFn = simple . spy ( function ( params , options , callback ) {
24- const resonse = JSON . parse ( fs . readFileSync ( responeFilename ) , null ) ;
24+ var response ;
25+ if ( responeFilename ) {
26+ response = JSON . parse ( fs . readFileSync ( responeFilename ) , null ) ;
27+ } else {
28+ response = { dummy :"response" } ;
29+ }
2530 if ( callback != undefined ) {
2631 if ( shouldError ) {
2732 // Return the given response as an error
28- callback ( resonse , null ) ;
33+ callback ( response , null ) ;
2934 } else {
3035 // Otherwise return the response as expected
31- callback ( null , resonse ) ;
36+ callback ( null , response ) ;
3237 }
3338 } else {
3439 return new Promise ( ( resolve , reject ) => {
3540 if ( shouldError ) {
36- reject ( resonse ) ;
41+ reject ( response ) ;
3742 } else {
38- resolve ( resonse ) ;
43+ resolve ( response ) ;
3944 }
4045 } ) ;
4146 }
4247 } ) ;
43- // Use the extend functionality of the ES-Client to register the mocked method
44- client . extend ( methodName , { force : true } , ( { makeRequest } ) => {
45- return mockedFn ;
46- } ) ;
48+
49+ let [ namespace , method ] = methodName . split ( '.' ) ;
50+ if ( method == null ) {
51+ method = namespace ;
52+ namespace = null ;
53+ }
54+ if ( namespace != null ) {
55+ client [ namespace ] [ method ] = mockedFn
56+ } else {
57+ client [ method ] = mockedFn ;
58+ }
4759 // Return the mocked function to perform assertions
4860 return mockedFn ;
4961}
0 commit comments