Skip to content

Commit fcc44f9

Browse files
refactor!: version command only output versions
1 parent 0eae759 commit fcc44f9

File tree

8 files changed

+868
-932
lines changed

8 files changed

+868
-932
lines changed

packages/webpack-cli/src/webpack-cli.ts

Lines changed: 736 additions & 704 deletions
Large diffs are not rendered by default.

smoketests/helpers.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,14 +83,14 @@ const runTest = async (pkg, cliArgs = [], logMessage = undefined, isSubPackage =
8383
});
8484
};
8585

86-
const runTestStdout = async ({ packageName, cliArgs, logMessage, isSubPackage } = {}) => {
86+
const runTestStdout = async ({ packageName, cliArgs, logMessage, isSubPackage, cwd } = {}) => {
8787
// Simulate package missing
8888
swapPkgName(packageName, isSubPackage);
8989

9090
const { execa } = await import("execa");
9191
const abortController = new AbortController();
9292
const proc = execa(CLI_ENTRY_PATH, cliArgs, {
93-
cwd: __dirname,
93+
cwd: cwd || __dirname,
9494
reject: false,
9595
cancelSignal: abortController.signal,
9696
});

smoketests/missing-packages/webpack.test.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
"use strict";
22

3+
const path = require("node:path");
4+
35
const { runTest, runTestStdout } = require("../helpers");
46

57
const noCommand = () => {
@@ -37,9 +39,14 @@ const serveCommand = () => {
3739
const versionCommand = () => {
3840
const packageName = "webpack";
3941
const args = ["version"];
40-
const logMessage = "System:";
41-
42-
return runTestStdout({ packageName, cliArgs: args, logMessage });
42+
const logMessage = "webpack:";
43+
44+
return runTestStdout({
45+
packageName,
46+
cliArgs: args,
47+
logMessage,
48+
cwd: path.resolve(__dirname, "../../"),
49+
});
4350
};
4451

4552
const helpCommand = () => {
Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ const spawnMock = jest.fn();
1616

1717
jest.mock("cross-spawn", () => ({ sync: spawnMock }));
1818

19-
describe("doInstall", () => {
19+
describe("installPackage", () => {
2020
let cli;
2121
let getDefaultPackageManagerSpy;
2222

@@ -36,7 +36,7 @@ describe("doInstall", () => {
3636
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("y"));
3737
getDefaultPackageManagerSpy.mockResolvedValue("npm");
3838

39-
const installResult = await cli.doInstall("test-package");
39+
const installResult = await cli.installPackage("test-package");
4040

4141
expect(installResult).toBe("test-package");
4242
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);
@@ -54,7 +54,7 @@ describe("doInstall", () => {
5454
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("y"));
5555
getDefaultPackageManagerSpy.mockReturnValue("yarn");
5656

57-
const installResult = await cli.doInstall("test-package");
57+
const installResult = await cli.installPackage("test-package");
5858

5959
expect(installResult).toBe("test-package");
6060
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);
@@ -72,7 +72,7 @@ describe("doInstall", () => {
7272
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("y"));
7373
getDefaultPackageManagerSpy.mockReturnValue("pnpm");
7474

75-
const installResult = await cli.doInstall("test-package");
75+
const installResult = await cli.installPackage("test-package");
7676

7777
expect(installResult).toBe("test-package");
7878
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);
@@ -91,7 +91,7 @@ describe("doInstall", () => {
9191
getDefaultPackageManagerSpy.mockReturnValue("npm");
9292

9393
const preMessage = jest.fn();
94-
const installResult = await cli.doInstall("test-package", { preMessage });
94+
const installResult = await cli.installPackage("test-package", { preMessage });
9595

9696
expect(installResult).toBe("test-package");
9797
expect(preMessage).toHaveBeenCalledTimes(1);
@@ -110,7 +110,7 @@ describe("doInstall", () => {
110110
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("y"));
111111
getDefaultPackageManagerSpy.mockReturnValue("npm");
112112

113-
const installResult = await cli.doInstall("test-package");
113+
const installResult = await cli.installPackage("test-package");
114114

115115
expect(installResult).toBe("test-package");
116116
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);
@@ -128,7 +128,7 @@ describe("doInstall", () => {
128128
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("yes"));
129129
getDefaultPackageManagerSpy.mockReturnValue("npm");
130130

131-
const installResult = await cli.doInstall("test-package");
131+
const installResult = await cli.installPackage("test-package");
132132

133133
expect(installResult).toBe("test-package");
134134
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);
@@ -146,7 +146,7 @@ describe("doInstall", () => {
146146
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("yEs"));
147147
getDefaultPackageManagerSpy.mockReturnValue("npm");
148148

149-
const installResult = await cli.doInstall("test-package");
149+
const installResult = await cli.installPackage("test-package");
150150

151151
expect(installResult).toBe("test-package");
152152
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);
@@ -164,7 +164,7 @@ describe("doInstall", () => {
164164
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("n"));
165165

166166
const mockExit = jest.spyOn(process, "exit").mockImplementation(() => {});
167-
const installResult = await cli.doInstall("test-package");
167+
const installResult = await cli.installPackage("test-package");
168168

169169
expect(installResult).toBeUndefined();
170170
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);
@@ -179,7 +179,7 @@ describe("doInstall", () => {
179179
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("n"));
180180

181181
const mockExit = jest.spyOn(process, "exit").mockImplementation(() => {});
182-
const installResult = await cli.doInstall("test-package");
182+
const installResult = await cli.installPackage("test-package");
183183

184184
expect(installResult).toBeUndefined();
185185
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);
@@ -194,7 +194,7 @@ describe("doInstall", () => {
194194
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("no"));
195195

196196
const mockExit = jest.spyOn(process, "exit").mockImplementation(() => {});
197-
const installResult = await cli.doInstall("test-package");
197+
const installResult = await cli.installPackage("test-package");
198198

199199
expect(installResult).toBeUndefined();
200200
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);
@@ -209,7 +209,7 @@ describe("doInstall", () => {
209209
readlineQuestionMock.mockImplementation((_questionTest, cb) => cb("No"));
210210

211211
const mockExit = jest.spyOn(process, "exit").mockImplementation(() => {});
212-
const installResult = await cli.doInstall("test-package");
212+
const installResult = await cli.installPackage("test-package");
213213

214214
expect(installResult).toBeUndefined();
215215
expect(readlineQuestionMock).toHaveBeenCalledTimes(1);

0 commit comments

Comments
 (0)