diff --git a/packages/api/core/spec/slow/init.slow.spec.ts b/packages/api/core/spec/slow/init.slow.spec.ts index df6ce43417..2bd85e9d10 100644 --- a/packages/api/core/spec/slow/init.slow.spec.ts +++ b/packages/api/core/spec/slow/init.slow.spec.ts @@ -39,6 +39,14 @@ describe('init', () => { fs.existsSync(path.resolve(dir, 'node_modules/@electron-forge/cli')), ).toEqual(true); expect(fs.existsSync(path.join(dir, 'forge.config.js'))).toEqual(true); + + // init should create a `private: true` npm package + const packageJSONString = await fs.promises.readFile( + path.join(dir, 'package.json'), + 'utf-8', + ); + const packageJSON = JSON.parse(packageJSONString); + expect(packageJSON).toHaveProperty('private', true); }); describe('with electronVersion', () => { diff --git a/packages/template/base/tmpl/package.json b/packages/template/base/tmpl/package.json index ec4b7f596b..25b32b1ff2 100644 --- a/packages/template/base/tmpl/package.json +++ b/packages/template/base/tmpl/package.json @@ -4,6 +4,7 @@ "version": "1.0.0", "description": "My Electron application description", "main": "src/index.js", + "private": true, "scripts": { "start": "electron-forge start", "package": "electron-forge package", diff --git a/packages/template/vite-typescript/spec/ViteTypeScriptTemplate.slow.spec.ts b/packages/template/vite-typescript/spec/ViteTypeScriptTemplate.slow.spec.ts index b359f0cf0f..122461c8a6 100644 --- a/packages/template/vite-typescript/spec/ViteTypeScriptTemplate.slow.spec.ts +++ b/packages/template/vite-typescript/spec/ViteTypeScriptTemplate.slow.spec.ts @@ -59,6 +59,15 @@ describe('ViteTypeScriptTemplate', () => { const jsFiles = await glob(path.join(dir, 'src', '**', '*.js')); expect(jsFiles.length).toEqual(0); }); + + it('should contain `private:true` in package.json', async () => { + const packageJSONString = await fs.promises.readFile( + path.join(dir, 'package.json'), + 'utf-8', + ); + const packageJSON = JSON.parse(packageJSONString); + expect(packageJSON).toHaveProperty('private', true); + }); }); describe('lint', () => { diff --git a/packages/template/vite/spec/ViteTemplate.spec.ts b/packages/template/vite/spec/ViteTemplate.spec.ts index 3ad02ab0e1..4de3a21c30 100644 --- a/packages/template/vite/spec/ViteTemplate.spec.ts +++ b/packages/template/vite/spec/ViteTemplate.spec.ts @@ -69,4 +69,13 @@ describe('ViteTemplate', () => { (await fs.promises.readFile(path.join(dir, 'index.html'))).toString(), ).toMatch(/src="\/src\/renderer\.js"/); }); + + it('should contain `private:true` in package.json', async () => { + const packageJSONString = await fs.promises.readFile( + path.join(dir, 'package.json'), + 'utf-8', + ); + const packageJSON = JSON.parse(packageJSONString); + expect(packageJSON).toHaveProperty('private', true); + }); }); diff --git a/packages/template/webpack-typescript/spec/WebpackTypeScript.slow.spec.ts b/packages/template/webpack-typescript/spec/WebpackTypeScript.slow.spec.ts index fa4ddb33f7..b1fbd8cddb 100644 --- a/packages/template/webpack-typescript/spec/WebpackTypeScript.slow.spec.ts +++ b/packages/template/webpack-typescript/spec/WebpackTypeScript.slow.spec.ts @@ -51,6 +51,15 @@ describe('WebpackTypeScriptTemplate', () => { expect(jsFiles.length).toEqual(0); }); + it('should contain `private:true` in package.json', async () => { + const packageJSONString = await fs.promises.readFile( + path.join(dir, 'package.json'), + 'utf-8', + ); + const packageJSON = JSON.parse(packageJSONString); + expect(packageJSON).toHaveProperty('private', true); + }); + describe('lint', () => { it('should initially pass the linting process', async () => { delete process.env.TS_NODE_PROJECT; diff --git a/packages/template/webpack/spec/WebpackTemplate.spec.ts b/packages/template/webpack/spec/WebpackTemplate.spec.ts index 259e2933a6..3e5d911548 100644 --- a/packages/template/webpack/spec/WebpackTemplate.spec.ts +++ b/packages/template/webpack/spec/WebpackTemplate.spec.ts @@ -61,4 +61,13 @@ describe('WebpackTemplate', () => { ).toString(), ).not.toMatch(/link rel="stylesheet"/); }); + + it('should contain `private:true` in package.json', async () => { + const packageJSONString = await fs.promises.readFile( + path.join(dir, 'package.json'), + 'utf-8', + ); + const packageJSON = JSON.parse(packageJSONString); + expect(packageJSON).toHaveProperty('private', true); + }); });