Skip to content

Commit 688c581

Browse files
author
Josh Goldberg
authored
Allowed --comments not to be provided (#443)
1 parent 575b619 commit 688c581

File tree

6 files changed

+52
-26
lines changed

6 files changed

+52
-26
lines changed

src/comments/convertComments.test.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,20 @@ const createStubDependencies = (
1010
});
1111

1212
describe("convertComments", () => {
13+
it("returns an empty result when --comment is not provided", async () => {
14+
// Arrange
15+
const dependencies = createStubDependencies();
16+
17+
// Act
18+
const result = await convertComments(dependencies, undefined);
19+
20+
// Assert
21+
expect(result).toEqual({
22+
data: undefined,
23+
status: ResultStatus.Succeeded,
24+
});
25+
});
26+
1327
it("returns an error when --comment is given as a boolean value", async () => {
1428
// Arrange
1529
const dependencies = createStubDependencies();

src/comments/convertComments.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,14 @@ const noGlobsResult: ResultWithDataStatus<string[]> = {
1717
export const convertComments = async (
1818
dependencies: ConvertCommentsDependencies,
1919
filePathGlobs: true | string | string[] | undefined,
20-
): Promise<ResultWithDataStatus<string[]>> => {
20+
): Promise<ResultWithDataStatus<string[] | undefined>> => {
21+
if (filePathGlobs === undefined) {
22+
return {
23+
data: undefined,
24+
status: ResultStatus.Succeeded,
25+
};
26+
}
27+
2128
if (filePathGlobs === true) {
2229
return noGlobsResult;
2330
}

src/conversion/convertConfig.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ export const convertConfig = async (
6565

6666
// 6. A summary of the results is printed to the user's console
6767
await dependencies.reportConversionResults(settings.config, simplifiedConfiguration);
68-
dependencies.reportCommentResults(settings.comments, commentsResult);
68+
dependencies.reportCommentResults(commentsResult);
6969
await dependencies.logMissingPackages(
7070
simplifiedConfiguration,
7171
originalConfigurations.data.packages,

src/reporting/reportCommentResults.test.ts

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ import { ResultStatus } from "../types";
33
import { reportCommentResults } from "./reportCommentResults";
44

55
describe("reportCommentResults", () => {
6-
it("logs a suggestion when no comment globs are provided", () => {
6+
it("logs a suggestion when no comment globs were requested", () => {
77
// Arrange
88
const logger = createStubLogger();
99

1010
// Act
11-
reportCommentResults({ logger }, undefined, { data: [], status: ResultStatus.Succeeded });
11+
reportCommentResults({ logger }, { data: undefined, status: ResultStatus.Succeeded });
1212

1313
// Assert
1414
expectEqualWrites(
@@ -23,7 +23,7 @@ describe("reportCommentResults", () => {
2323
const errors = [new Error("Hello")];
2424

2525
// Act
26-
reportCommentResults({ logger }, ["src/index.ts"], { errors, status: ResultStatus.Failed });
26+
reportCommentResults({ logger }, { errors, status: ResultStatus.Failed });
2727

2828
// Assert
2929
expectEqualWrites(
@@ -44,7 +44,7 @@ describe("reportCommentResults", () => {
4444
const errors = [new Error("Hello"), new Error("World")];
4545

4646
// Act
47-
reportCommentResults({ logger }, ["src/index.ts"], { errors, status: ResultStatus.Failed });
47+
reportCommentResults({ logger }, { errors, status: ResultStatus.Failed });
4848

4949
// Assert
5050
expectEqualWrites(
@@ -65,10 +65,13 @@ describe("reportCommentResults", () => {
6565
const logger = createStubLogger();
6666

6767
// Act
68-
reportCommentResults({ logger }, ["src/*.ts"], {
69-
data: ["src/index.ts"],
70-
status: ResultStatus.Succeeded,
71-
});
68+
reportCommentResults(
69+
{ logger },
70+
{
71+
data: ["src/index.ts"],
72+
status: ResultStatus.Succeeded,
73+
},
74+
);
7275

7376
// Assert
7477
expectEqualWrites(
@@ -82,10 +85,13 @@ describe("reportCommentResults", () => {
8285
const logger = createStubLogger();
8386

8487
// Act
85-
reportCommentResults({ logger }, ["src/*.ts"], {
86-
data: ["src/index.ts", "src/data.ts"],
87-
status: ResultStatus.Succeeded,
88-
});
88+
reportCommentResults(
89+
{ logger },
90+
{
91+
data: ["src/index.ts", "src/data.ts"],
92+
status: ResultStatus.Succeeded,
93+
},
94+
);
8995

9096
// Assert
9197
expectEqualWrites(

src/reporting/reportCommentResults.ts

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,18 +10,8 @@ export type ReportCommentResultsDependencies = {
1010

1111
export const reportCommentResults = (
1212
dependencies: ReportCommentResultsDependencies,
13-
commentGlobs: string | string[] | undefined,
14-
commentsResult: ResultWithDataStatus<string[]>,
13+
commentsResult: ResultWithDataStatus<string[] | undefined>,
1514
) => {
16-
if (commentGlobs === undefined) {
17-
dependencies.logger.stdout.write(
18-
chalk.magentaBright(
19-
`${EOL}♻ Consider using --comment to replace TSLint comment directives in your source files. ♻${EOL}`,
20-
),
21-
);
22-
return;
23-
}
24-
2515
if (commentsResult.status === ResultStatus.Failed) {
2616
const headline = `${commentsResult.errors.length} error${
2717
commentsResult.errors.length === 1 ? "" : "s"
@@ -40,6 +30,15 @@ export const reportCommentResults = (
4030
return;
4131
}
4232

33+
if (commentsResult.data === undefined) {
34+
dependencies.logger.stdout.write(
35+
chalk.magentaBright(
36+
`${EOL}♻ Consider using --comment to replace TSLint comment directives in your source files. ♻${EOL}`,
37+
),
38+
);
39+
return;
40+
}
41+
4342
dependencies.logger.stdout.write(chalk.magentaBright(`${EOL}${commentsResult.data.length}`));
4443
dependencies.logger.stdout.write(
4544
chalk.magenta(` file${commentsResult.data.length === 1 ? "" : "s"}`),

src/reporting/reportOutputs.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export const logSuccessfulConversions = (
1313
converted: Map<string, EditorSetting | ESLintRuleOptions>,
1414
logger: Logger,
1515
) => {
16-
logger.stdout.write(chalk.greenBright(`✨ ${converted.size}`));
16+
logger.stdout.write(chalk.greenBright(`${EOL} ${converted.size}`));
1717
logger.stdout.write(
1818
converted.size === 1
1919
? chalk.green(` ${conversionTypeName} replaced with its ESLint equivalent.`)

0 commit comments

Comments
 (0)