File tree Expand file tree Collapse file tree 2 files changed +25
-1
lines changed Expand file tree Collapse file tree 2 files changed +25
-1
lines changed Original file line number Diff line number Diff line change @@ -319,6 +319,7 @@ function runInThisContext(code, options) {
319319
320320function compileFunction ( code , params , options = kEmptyObject ) {
321321 validateString ( code , 'code' ) ;
322+ validateObject ( options , 'options' ) ;
322323 if ( params !== undefined ) {
323324 validateStringArray ( params , 'params' ) ;
324325 }
Original file line number Diff line number Diff line change @@ -172,7 +172,30 @@ const vm = require('vm');
172172 'Received null'
173173 } ) ;
174174
175- // vm.compileFunction('', undefined, null);
175+ // Test for invalid options type
176+ assert . throws ( ( ) => {
177+ vm . compileFunction ( '' , [ ] , null ) ;
178+ } , {
179+ name : 'TypeError' ,
180+ code : 'ERR_INVALID_ARG_TYPE' ,
181+ message : 'The "options" argument must be of type object. Received null'
182+ } ) ;
183+
184+ assert . throws ( ( ) => {
185+ vm . compileFunction ( '' , [ ] , 'string' ) ;
186+ } , {
187+ name : 'TypeError' ,
188+ code : 'ERR_INVALID_ARG_TYPE' ,
189+ message : 'The "options" argument must be of type object. Received type string (\'string\')'
190+ } ) ;
191+
192+ assert . throws ( ( ) => {
193+ vm . compileFunction ( '' , [ ] , 123 ) ;
194+ } , {
195+ name : 'TypeError' ,
196+ code : 'ERR_INVALID_ARG_TYPE' ,
197+ message : 'The "options" argument must be of type object. Received type number (123)'
198+ } ) ;
176199
177200 const optionTypes = {
178201 'filename' : 'string' ,
You can’t perform that action at this time.
0 commit comments