@@ -933,6 +933,39 @@ describe('The config-generator function', () => {
933933 } ) ;
934934 } ) ;
935935
936+ describe ( 'Test configureBabelPresetEnv()' , ( ) => {
937+ it ( 'without configureBabelPresetEnv()' , ( ) => {
938+ const config = createConfig ( ) ;
939+ config . outputPath = '/tmp/output/public-path' ;
940+ config . publicPath = '/public-path' ;
941+ config . addEntry ( 'main' , './main' ) ;
942+
943+ const actualConfig = configGenerator ( config ) ;
944+
945+ const jsRule = findRule ( / \. j s x ? $ / , actualConfig . module . rules ) ;
946+ const babelLoader = jsRule . use . find ( loader => loader . loader === 'babel-loader' ) ;
947+ const babelEnvPreset = babelLoader . options . presets . find ( ( [ name ] ) => name === '@babel/preset-env' ) ;
948+ expect ( babelEnvPreset [ 1 ] . useBuiltIns ) . to . equal ( false ) ;
949+ } ) ;
950+
951+ it ( 'with configureBabelPresetEnv()' , ( ) => {
952+ const config = createConfig ( ) ;
953+ config . outputPath = '/tmp/output/public-path' ;
954+ config . publicPath = '/public-path' ;
955+ config . addEntry ( 'main' , './main' ) ;
956+ config . configureBabelPresetEnv ( options => {
957+ options . useBuiltIns = 'usage' ;
958+ } ) ;
959+
960+ const actualConfig = configGenerator ( config ) ;
961+
962+ const jsRule = findRule ( / \. j s x ? $ / , actualConfig . module . rules ) ;
963+ const babelLoader = jsRule . use . find ( loader => loader . loader === 'babel-loader' ) ;
964+ const babelEnvPreset = babelLoader . options . presets . find ( ( [ name ] ) => name === '@babel/preset-env' ) ;
965+ expect ( babelEnvPreset [ 1 ] . useBuiltIns ) . to . equal ( 'usage' ) ;
966+ } ) ;
967+ } ) ;
968+
936969 describe ( 'Test shouldSplitEntryChunks' , ( ) => {
937970 it ( 'Not production' , ( ) => {
938971 const config = createConfig ( ) ;
0 commit comments