@@ -326,6 +326,54 @@ describe("next config overrides", () => {
326326 } ) ;
327327} ) ;
328328
329+ describe ( "validateNextConfigOverride" , ( ) => {
330+ let tmpDir : string ;
331+ let root : string ;
332+ let projectRoot : string ;
333+ let originalConfigFileName : string ;
334+ let newConfigFileName : string ;
335+ let originalConfigPath : string ;
336+ let newConfigPath : string ;
337+
338+ beforeEach ( ( ) => {
339+ tmpDir = fs . mkdtempSync ( path . join ( os . tmpdir ( ) , "test-next-config-override" ) ) ;
340+ root = tmpDir ;
341+ projectRoot = tmpDir ;
342+ originalConfigFileName = "next.config.js" ;
343+ newConfigFileName = "next.config.original.js" ;
344+ originalConfigPath = path . join ( root , originalConfigFileName ) ;
345+ newConfigPath = path . join ( root , newConfigFileName ) ;
346+
347+ fs . mkdirSync ( root , { recursive : true } ) ;
348+ } ) ;
349+
350+ afterEach ( ( ) => {
351+ fs . rmSync ( tmpDir , { recursive : true , force : true } ) ;
352+ } ) ;
353+
354+ it ( "should throw an error when new config file doesn't exist" , async ( ) => {
355+ fs . writeFileSync ( originalConfigPath , "module.exports = {}" ) ;
356+
357+ const { validateNextConfigOverride } = await importOverrides ;
358+
359+ await assert . rejects (
360+ async ( ) => await validateNextConfigOverride ( root , projectRoot , originalConfigFileName ) ,
361+ / N e w N e x t .j s c o n f i g f i l e n o t f o u n d / ,
362+ ) ;
363+ } ) ;
364+
365+ it ( "should throw an error when original config file doesn't exist" , async ( ) => {
366+ fs . writeFileSync ( newConfigPath , "module.exports = {}" ) ;
367+
368+ const { validateNextConfigOverride } = await importOverrides ;
369+
370+ await assert . rejects (
371+ async ( ) => await validateNextConfigOverride ( root , projectRoot , originalConfigFileName ) ,
372+ / O r i g i n a l N e x t .j s c o n f i g f i l e n o t f o u n d / ,
373+ ) ;
374+ } ) ;
375+ } ) ;
376+
329377// Normalize whitespace for comparison
330378function normalizeWhitespace ( str : string ) {
331379 return str . replace ( / \s + / g, " " ) . trim ( ) ;
0 commit comments