11import fs from 'fs-extra' ;
22import path from 'path' ;
3- import _ from 'lodash' ;
43
54import settings from '../../resources/settings' ;
65import strings from '../../resources/' ;
76import { Logger } from '../logger' ;
7+ import { OcJsonConfig } from '../../types' ;
88
99interface MockedPlugin {
1010 register : ( options : unknown , dependencies : unknown , next : ( ) => void ) => void ;
@@ -48,7 +48,7 @@ const registerStaticMocks = (
4848 mocks : Record < string , string > ,
4949 logger : Logger
5050) : PluginMock [ ] =>
51- _ . map ( mocks , ( mockedValue , pluginName ) => {
51+ Object . entries ( mocks ) . map ( ( [ pluginName , mockedValue ] ) => {
5252 logger . ok ( `├── ${ pluginName } () => ${ mockedValue } ` ) ;
5353
5454 return {
@@ -65,31 +65,33 @@ const registerDynamicMocks = (
6565 mocks : Record < string , string > ,
6666 logger : Logger
6767) =>
68- _ . map ( mocks , ( source , pluginName ) => {
69- let pluginMock ;
70- try {
71- pluginMock = require ( path . resolve ( ocJsonLocation , source ) ) ;
72- } catch ( er ) {
73- logger . err ( String ( er ) ) ;
74- return ;
75- }
68+ Object . entries ( mocks )
69+ . map ( ( [ pluginName , source ] ) => {
70+ let pluginMock ;
71+ try {
72+ pluginMock = require ( path . resolve ( ocJsonLocation , source ) ) ;
73+ } catch ( er ) {
74+ logger . err ( String ( er ) ) ;
75+ return ;
76+ }
7677
77- if ( ! isMockValid ( pluginMock ) ) {
78- logger . err ( `├── ${ pluginName } () => Error (skipping)` ) ;
79- logger . err ( strings . errors . cli . MOCK_PLUGIN_IS_NOT_VALID ) ;
80- return ;
81- }
78+ if ( ! isMockValid ( pluginMock ) ) {
79+ logger . err ( `├── ${ pluginName } () => Error (skipping)` ) ;
80+ logger . err ( strings . errors . cli . MOCK_PLUGIN_IS_NOT_VALID ) ;
81+ return ;
82+ }
8283
83- const register = ( pluginMock as MockedPlugin ) . register || defaultRegister ;
84- const execute = ( pluginMock as MockedPlugin ) . execute || pluginMock ;
84+ const register = ( pluginMock as MockedPlugin ) . register || defaultRegister ;
85+ const execute = ( pluginMock as MockedPlugin ) . execute || pluginMock ;
8586
86- logger . ok ( `├── ${ pluginName } () => [Function]` ) ;
87+ logger . ok ( `├── ${ pluginName } () => [Function]` ) ;
8788
88- return {
89- name : pluginName ,
90- register : { execute, register }
91- } ;
92- } ) . filter ( ( pluginMock ) : pluginMock is PluginMock => ! ! pluginMock ) ;
89+ return {
90+ name : pluginName ,
91+ register : { execute, register }
92+ } ;
93+ } )
94+ . filter ( ( pluginMock ) : pluginMock is PluginMock => ! ! pluginMock ) ;
9395
9496const findPath = (
9597 pathToResolve : string ,
@@ -128,7 +130,7 @@ export default function getMockedPlugins(
128130 return plugins ;
129131 }
130132
131- const content = fs . readJsonSync ( ocJsonPath ) ;
133+ const content : OcJsonConfig = fs . readJsonSync ( ocJsonPath ) ;
132134 const ocJsonLocation = ocJsonPath . slice ( 0 , - ocJsonFileName . length ) ;
133135
134136 if ( ! content . mocks || ! content . mocks . plugins ) {
@@ -138,10 +140,14 @@ export default function getMockedPlugins(
138140 logger . warn ( strings . messages . cli . REGISTERING_MOCKED_PLUGINS ) ;
139141
140142 plugins = plugins . concat (
141- registerStaticMocks ( content . mocks . plugins . static , logger )
143+ registerStaticMocks ( content . mocks . plugins . static ?? { } , logger )
142144 ) ;
143145 plugins = plugins . concat (
144- registerDynamicMocks ( ocJsonLocation , content . mocks . plugins . dynamic , logger )
146+ registerDynamicMocks (
147+ ocJsonLocation ,
148+ content . mocks . plugins . dynamic ?? { } ,
149+ logger
150+ )
145151 ) ;
146152
147153 return plugins ;
0 commit comments