@rushstack/heft-webpack4-plugin 0.10.23 → 0.10.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebpackConfigurationLoader.test.js","sourceRoot":"","sources":["../src/WebpackConfigurationLoader.test.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\n// See LICENSE in the project root for license information.\n\nimport type { HeftConfiguration, IHeftParameters, IHeftTaskSession, IScopedLogger } from '@rushstack/heft';\nimport { MockScopedLogger } from '@rushstack/heft/lib/pluginFramework/logging/MockScopedLogger';\nimport { type ITerminal, StringBufferTerminalProvider, Terminal } from '@rushstack/node-core-library';\n\nimport * as WebpackConfigurationLoader from './WebpackConfigurationLoader';\nimport { _createAccessorHooks } from './Webpack4Plugin';\nimport { type IWebpackConfiguration, STAGE_LOAD_LOCAL_CONFIG } from './shared';\n\ninterface IMockLoadWebpackConfigurationOptions\n extends WebpackConfigurationLoader.ILoadWebpackConfigurationOptions {\n loadWebpackAsyncFn: jest.Mock;\n _terminalProvider: StringBufferTerminalProvider;\n _tryLoadConfigFileAsync: jest.Mock;\n}\n\ndescribe(WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync.name, () => {\n function createOptions(production: boolean, serveMode: boolean): IMockLoadWebpackConfigurationOptions {\n const terminalProvider: StringBufferTerminalProvider = new StringBufferTerminalProvider(false);\n const terminal: ITerminal = new Terminal(terminalProvider);\n const logger: IScopedLogger = new MockScopedLogger(terminal);\n const buildFolderPath: string = __dirname;\n\n const parameters: Partial<IHeftParameters> = {\n production\n };\n\n const taskSession: IHeftTaskSession = {\n logger,\n parameters: parameters as unknown as IHeftParameters,\n // Other values unused during these tests\n hooks: undefined!,\n parsedCommandLine: undefined!,\n requestAccessToPluginByName: undefined!,\n taskName: 'webpack',\n tempFolderPath: `${__dirname}/temp`\n };\n\n const heftConfiguration: Partial<HeftConfiguration> = {\n buildFolderPath\n };\n\n return {\n taskSession,\n heftConfiguration: heftConfiguration as unknown as HeftConfiguration,\n hooks: _createAccessorHooks(),\n loadWebpackAsyncFn: jest.fn(),\n serveMode,\n\n _terminalProvider: terminalProvider,\n _tryLoadConfigFileAsync: jest.fn()\n };\n }\n\n it(`onLoadConfiguration can return false`, async () => {\n const options: IMockLoadWebpackConfigurationOptions = createOptions(false, false);\n\n const onLoadConfiguration: jest.Mock = jest.fn();\n const onConfigure: jest.Mock = jest.fn();\n const onAfterConfigure: jest.Mock = jest.fn();\n\n options.hooks.onLoadConfiguration.tap('test', onLoadConfiguration);\n options.hooks.onConfigure.tap('test', onConfigure);\n options.hooks.onAfterConfigure.tap('test', onAfterConfigure);\n\n onLoadConfiguration.mockReturnValue(false);\n\n const config: IWebpackConfiguration | undefined =\n await WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync(options, {});\n expect(config).toBeUndefined();\n expect(onLoadConfiguration).toHaveBeenCalledTimes(1);\n expect(options._tryLoadConfigFileAsync).toHaveBeenCalledTimes(0);\n expect(onConfigure).toHaveBeenCalledTimes(0);\n expect(onAfterConfigure).toHaveBeenCalledTimes(0);\n });\n\n it(`calls tryLoadWebpackConfigurationFileAsync`, async () => {\n const options: IMockLoadWebpackConfigurationOptions = createOptions(false, false);\n\n const onConfigure: jest.Mock = jest.fn();\n const onAfterConfigure: jest.Mock = jest.fn();\n\n options.hooks.onConfigure.tap('test', onConfigure);\n options.hooks.onAfterConfigure.tap('test', onAfterConfigure);\n\n options._tryLoadConfigFileAsync.mockReturnValue(Promise.resolve(undefined));\n\n const config: IWebpackConfiguration | undefined =\n await WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync(options, {});\n expect(config).toBeUndefined();\n expect(options._tryLoadConfigFileAsync).toHaveBeenCalledTimes(1);\n expect(onConfigure).toHaveBeenCalledTimes(0);\n expect(onAfterConfigure).toHaveBeenCalledTimes(0);\n });\n\n it(`can fall back`, async () => {\n const options: IMockLoadWebpackConfigurationOptions = createOptions(false, false);\n\n const onLoadConfiguration: jest.Mock = jest.fn();\n const onConfigure: jest.Mock = jest.fn();\n const onAfterConfigure: jest.Mock = jest.fn();\n\n options.hooks.onLoadConfiguration.tap(\n { name: 'test', stage: STAGE_LOAD_LOCAL_CONFIG + 1 },\n onLoadConfiguration\n );\n options.hooks.onConfigure.tap('test', onConfigure);\n options.hooks.onAfterConfigure.tap('test', onAfterConfigure);\n\n options._tryLoadConfigFileAsync.mockReturnValue(Promise.resolve(undefined));\n\n const mockConfig: IWebpackConfiguration = {};\n onLoadConfiguration.mockReturnValue(mockConfig);\n\n const config: IWebpackConfiguration | undefined =\n await WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync(options, {});\n expect(config).toBe(mockConfig);\n\n expect(options._tryLoadConfigFileAsync).toHaveBeenCalledTimes(1);\n expect(onLoadConfiguration).toHaveBeenCalledTimes(1);\n expect(onConfigure).toHaveBeenCalledTimes(1);\n expect(onAfterConfigure).toHaveBeenCalledTimes(1);\n\n expect(onConfigure).toHaveBeenCalledWith(mockConfig);\n expect(onAfterConfigure).toHaveBeenCalledWith(mockConfig);\n });\n\n it(`respects hook order`, async () => {\n const options: IMockLoadWebpackConfigurationOptions = createOptions(false, false);\n\n const onConfigure: jest.Mock = jest.fn();\n const onAfterConfigure: jest.Mock = jest.fn();\n\n options.hooks.onConfigure.tap('test', onConfigure);\n options.hooks.onAfterConfigure.tap('test', onAfterConfigure);\n\n const mockConfig: IWebpackConfiguration = {};\n\n options._tryLoadConfigFileAsync.mockReturnValue(Promise.resolve(mockConfig));\n\n const config: IWebpackConfiguration | undefined =\n await WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync(options, {});\n expect(config).toBe(mockConfig);\n expect(options._tryLoadConfigFileAsync).toHaveBeenCalledTimes(1);\n expect(onConfigure).toHaveBeenCalledTimes(1);\n expect(onConfigure).toHaveBeenCalledWith(mockConfig);\n expect(onAfterConfigure).toHaveBeenCalledTimes(1);\n expect(onAfterConfigure).toHaveBeenCalledWith(mockConfig);\n });\n});\n"]}
|
|
1
|
+
{"version":3,"file":"WebpackConfigurationLoader.test.js","sourceRoot":"","sources":["../src/WebpackConfigurationLoader.test.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\n// See LICENSE in the project root for license information.\n\nimport type { HeftConfiguration, IHeftParameters, IHeftTaskSession, IScopedLogger } from '@rushstack/heft';\nimport { MockScopedLogger } from '@rushstack/heft/lib/pluginFramework/logging/MockScopedLogger';\nimport { type ITerminal, StringBufferTerminalProvider, Terminal } from '@rushstack/terminal';\n\nimport * as WebpackConfigurationLoader from './WebpackConfigurationLoader';\nimport { _createAccessorHooks } from './Webpack4Plugin';\nimport { type IWebpackConfiguration, STAGE_LOAD_LOCAL_CONFIG } from './shared';\n\ninterface IMockLoadWebpackConfigurationOptions\n extends WebpackConfigurationLoader.ILoadWebpackConfigurationOptions {\n loadWebpackAsyncFn: jest.Mock;\n _terminalProvider: StringBufferTerminalProvider;\n _tryLoadConfigFileAsync: jest.Mock;\n}\n\ndescribe(WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync.name, () => {\n function createOptions(production: boolean, serveMode: boolean): IMockLoadWebpackConfigurationOptions {\n const terminalProvider: StringBufferTerminalProvider = new StringBufferTerminalProvider(false);\n const terminal: ITerminal = new Terminal(terminalProvider);\n const logger: IScopedLogger = new MockScopedLogger(terminal);\n const buildFolderPath: string = __dirname;\n\n const parameters: Partial<IHeftParameters> = {\n production\n };\n\n const taskSession: IHeftTaskSession = {\n logger,\n parameters: parameters as unknown as IHeftParameters,\n // Other values unused during these tests\n hooks: undefined!,\n parsedCommandLine: undefined!,\n requestAccessToPluginByName: undefined!,\n taskName: 'webpack',\n tempFolderPath: `${__dirname}/temp`\n };\n\n const heftConfiguration: Partial<HeftConfiguration> = {\n buildFolderPath\n };\n\n return {\n taskSession,\n heftConfiguration: heftConfiguration as unknown as HeftConfiguration,\n hooks: _createAccessorHooks(),\n loadWebpackAsyncFn: jest.fn(),\n serveMode,\n\n _terminalProvider: terminalProvider,\n _tryLoadConfigFileAsync: jest.fn()\n };\n }\n\n it(`onLoadConfiguration can return false`, async () => {\n const options: IMockLoadWebpackConfigurationOptions = createOptions(false, false);\n\n const onLoadConfiguration: jest.Mock = jest.fn();\n const onConfigure: jest.Mock = jest.fn();\n const onAfterConfigure: jest.Mock = jest.fn();\n\n options.hooks.onLoadConfiguration.tap('test', onLoadConfiguration);\n options.hooks.onConfigure.tap('test', onConfigure);\n options.hooks.onAfterConfigure.tap('test', onAfterConfigure);\n\n onLoadConfiguration.mockReturnValue(false);\n\n const config: IWebpackConfiguration | undefined =\n await WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync(options, {});\n expect(config).toBeUndefined();\n expect(onLoadConfiguration).toHaveBeenCalledTimes(1);\n expect(options._tryLoadConfigFileAsync).toHaveBeenCalledTimes(0);\n expect(onConfigure).toHaveBeenCalledTimes(0);\n expect(onAfterConfigure).toHaveBeenCalledTimes(0);\n });\n\n it(`calls tryLoadWebpackConfigurationFileAsync`, async () => {\n const options: IMockLoadWebpackConfigurationOptions = createOptions(false, false);\n\n const onConfigure: jest.Mock = jest.fn();\n const onAfterConfigure: jest.Mock = jest.fn();\n\n options.hooks.onConfigure.tap('test', onConfigure);\n options.hooks.onAfterConfigure.tap('test', onAfterConfigure);\n\n options._tryLoadConfigFileAsync.mockReturnValue(Promise.resolve(undefined));\n\n const config: IWebpackConfiguration | undefined =\n await WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync(options, {});\n expect(config).toBeUndefined();\n expect(options._tryLoadConfigFileAsync).toHaveBeenCalledTimes(1);\n expect(onConfigure).toHaveBeenCalledTimes(0);\n expect(onAfterConfigure).toHaveBeenCalledTimes(0);\n });\n\n it(`can fall back`, async () => {\n const options: IMockLoadWebpackConfigurationOptions = createOptions(false, false);\n\n const onLoadConfiguration: jest.Mock = jest.fn();\n const onConfigure: jest.Mock = jest.fn();\n const onAfterConfigure: jest.Mock = jest.fn();\n\n options.hooks.onLoadConfiguration.tap(\n { name: 'test', stage: STAGE_LOAD_LOCAL_CONFIG + 1 },\n onLoadConfiguration\n );\n options.hooks.onConfigure.tap('test', onConfigure);\n options.hooks.onAfterConfigure.tap('test', onAfterConfigure);\n\n options._tryLoadConfigFileAsync.mockReturnValue(Promise.resolve(undefined));\n\n const mockConfig: IWebpackConfiguration = {};\n onLoadConfiguration.mockReturnValue(mockConfig);\n\n const config: IWebpackConfiguration | undefined =\n await WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync(options, {});\n expect(config).toBe(mockConfig);\n\n expect(options._tryLoadConfigFileAsync).toHaveBeenCalledTimes(1);\n expect(onLoadConfiguration).toHaveBeenCalledTimes(1);\n expect(onConfigure).toHaveBeenCalledTimes(1);\n expect(onAfterConfigure).toHaveBeenCalledTimes(1);\n\n expect(onConfigure).toHaveBeenCalledWith(mockConfig);\n expect(onAfterConfigure).toHaveBeenCalledWith(mockConfig);\n });\n\n it(`respects hook order`, async () => {\n const options: IMockLoadWebpackConfigurationOptions = createOptions(false, false);\n\n const onConfigure: jest.Mock = jest.fn();\n const onAfterConfigure: jest.Mock = jest.fn();\n\n options.hooks.onConfigure.tap('test', onConfigure);\n options.hooks.onAfterConfigure.tap('test', onAfterConfigure);\n\n const mockConfig: IWebpackConfiguration = {};\n\n options._tryLoadConfigFileAsync.mockReturnValue(Promise.resolve(mockConfig));\n\n const config: IWebpackConfiguration | undefined =\n await WebpackConfigurationLoader.tryLoadWebpackConfigurationAsync(options, {});\n expect(config).toBe(mockConfig);\n expect(options._tryLoadConfigFileAsync).toHaveBeenCalledTimes(1);\n expect(onConfigure).toHaveBeenCalledTimes(1);\n expect(onConfigure).toHaveBeenCalledWith(mockConfig);\n expect(onAfterConfigure).toHaveBeenCalledTimes(1);\n expect(onAfterConfigure).toHaveBeenCalledWith(mockConfig);\n });\n});\n"]}
|
package/lib/tsdoc-metadata.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rushstack/heft-webpack4-plugin",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.25",
|
|
4
4
|
"description": "Heft plugin for Webpack 4",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
}
|
|
18
18
|
},
|
|
19
19
|
"peerDependencies": {
|
|
20
|
-
"@rushstack/heft": "^0.64.
|
|
20
|
+
"@rushstack/heft": "^0.64.8",
|
|
21
21
|
"@types/webpack": "^4",
|
|
22
22
|
"webpack": "~4.47.0"
|
|
23
23
|
},
|
|
@@ -26,15 +26,16 @@
|
|
|
26
26
|
"tapable": "1.1.3",
|
|
27
27
|
"watchpack": "2.4.0",
|
|
28
28
|
"webpack-dev-server": "~4.9.3",
|
|
29
|
-
"@rushstack/debug-certificate-manager": "1.3.
|
|
30
|
-
"@rushstack/node-core-library": "
|
|
29
|
+
"@rushstack/debug-certificate-manager": "1.3.25",
|
|
30
|
+
"@rushstack/node-core-library": "4.0.0"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@types/watchpack": "2.4.0",
|
|
34
34
|
"@types/webpack": "4.41.32",
|
|
35
35
|
"webpack": "~4.47.0",
|
|
36
|
-
"
|
|
37
|
-
"@rushstack/
|
|
36
|
+
"@rushstack/heft": "0.64.8",
|
|
37
|
+
"@rushstack/terminal": "0.8.0",
|
|
38
|
+
"local-node-rig": "1.0.0"
|
|
38
39
|
},
|
|
39
40
|
"scripts": {
|
|
40
41
|
"build": "heft build --clean",
|