11import { join } from 'path' ;
2+ import { readFileSync } from 'fs' ;
23
34import funpack from '../index' ;
45
@@ -13,18 +14,21 @@ jest.mock('../utils/getPackageJsonObject', () =>
1314 funpack : {
1415 settings : {
1516 outputDir : 'example/dist-splitting' ,
16- packageFieldsToCopy : [ 'version' , 'type' ] ,
17+ packageFieldsToCopy : [ 'version' ] ,
1718 cleanupOutputDir : true ,
1819 zip : true ,
1920 esbuildConfigOverride : {
2021 format : 'esm' ,
2122 target : 'node16' ,
2223 splitting : true ,
2324 sourcemap : true ,
25+ outExtension : {
26+ '.js' : '.mjs' ,
27+ } ,
2428 } ,
2529 } ,
2630 functions : {
27- firstSplit : './example/test .ts' ,
31+ firstSplit : './example/example .ts' ,
2832 secondSplit : './example/second.ts' ,
2933 } ,
3034 } ,
@@ -35,6 +39,12 @@ describe('funpack', () => {
3539 console . log = jest . fn ( ) ;
3640 it ( 'builds correctly' , async ( ) => {
3741 await funpack ( ) ;
42+
43+ const firstPackageJson = JSON . parse (
44+ readFileSync ( 'example/dist-splitting/firstSplit/package.json' ) . toString ( )
45+ ) ;
46+ expect ( firstPackageJson ) . toMatchSnapshot ( ) ;
47+
3848 // TODO: Improve test case to check for files?
3949 expect ( console . log ) . toHaveBeenCalledTimes ( 2 ) ;
4050 const logMock = console . log as jest . Mock ;
@@ -47,6 +57,6 @@ describe('funpack', () => {
4757 expect ( logMock . mock . calls [ 1 ] [ 0 ] ) . toBe (
4858 join ( 'example' , 'dist-splitting' , 'firstSplit.zip' )
4959 ) ;
50- expect ( logMock . mock . calls [ 1 ] [ 2 ] ) . toBeCloseTo ( 69275 , - 2 ) ;
60+ expect ( logMock . mock . calls [ 1 ] [ 2 ] ) . toBeCloseTo ( 69327 , - 2 ) ;
5161 } ) ;
5262} ) ;
0 commit comments