Skip to content

Commit 760ef44

Browse files
committed
test if onlyMultiLine flag changes answer
1 parent 6029b5c commit 760ef44

File tree

6 files changed

+32
-31
lines changed

6 files changed

+32
-31
lines changed

src/harness/fourslash.ts

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2508,16 +2508,19 @@ namespace FourSlash {
25082508
}
25092509
}
25102510

2511-
public verifySpanOfEnclosingComment(negative: boolean, onlyMultiLine: boolean) {
2511+
public verifySpanOfEnclosingComment(negative: boolean, onlyMultiLineDiverges?: boolean) {
25122512
const expected = !negative;
25132513
const position = this.currentCaretPosition;
25142514
const fileName = this.activeFile.fileName;
2515-
const actual = !!this.languageService.getSpanOfEnclosingComment(fileName, position, /*onlyMultiLine*/ onlyMultiLine);
2516-
if (expected !== actual) {
2515+
const actual = !!this.languageService.getSpanOfEnclosingComment(fileName, position, /*onlyMultiLine*/ false);
2516+
const actualOnlyMultiLine = !!this.languageService.getSpanOfEnclosingComment(fileName, position, /*onlyMultiLine*/ true);
2517+
if (expected !== actual || onlyMultiLineDiverges === (actual === actualOnlyMultiLine)) {
25172518
this.raiseError(`verifySpanOfEnclosingComment failed:
25182519
position: '${position}'
25192520
fileName: '${fileName}'
2520-
onlyMultiLine: '${onlyMultiLine}'
2521+
onlyMultiLineDiverges: '${onlyMultiLineDiverges}'
2522+
actual: '${actual}'
2523+
actualOnlyMultiLine: '${actualOnlyMultiLine}'
25212524
expected: '${expected}'.`);
25222525
}
25232526
}
@@ -3662,8 +3665,8 @@ namespace FourSlashInterface {
36623665
this.state.verifyBraceCompletionAtPosition(this.negative, openingBrace);
36633666
}
36643667

3665-
public isInCommentAtPosition(onlyMultiLine: boolean) {
3666-
this.state.verifySpanOfEnclosingComment(this.negative, onlyMultiLine);
3668+
public isInCommentAtPosition(onlyMultiLineDiverges?: boolean) {
3669+
this.state.verifySpanOfEnclosingComment(this.negative, onlyMultiLineDiverges);
36673670
}
36683671

36693672
public codeFixAvailable() {

tests/cases/fourslash/fourslash.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ declare namespace FourSlashInterface {
153153
typeDefinitionCountIs(expectedCount: number): void;
154154
implementationListIsEmpty(): void;
155155
isValidBraceCompletionAtPosition(openingBrace?: string): void;
156-
isInCommentAtPosition(onlyMultiLine: boolean): void;
156+
isInCommentAtPosition(onlyMultiLineDiverges?: boolean): void;
157157
codeFixAvailable(): void;
158158
applicableRefactorAvailableAtMarker(markerName: string): void;
159159
codeFixDiagnosticsAvailableAtMarkers(markerNames: string[], diagnosticCode?: number): void;

tests/cases/fourslash/isInMultiLineComment.ts

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,37 +11,36 @@
1111
const firstCommentStart = 0;
1212
const firstCommentEnd = 7;
1313
goTo.position(firstCommentStart);
14-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
14+
verify.not.isInCommentAtPosition();
1515

1616
goTo.position(firstCommentStart + 1);
17-
verify.isInCommentAtPosition(/*onlyMultiLine*/ true);
17+
verify.isInCommentAtPosition();
1818
goTo.position(firstCommentEnd - 1);
19-
verify.isInCommentAtPosition(/*onlyMultiLine*/ true);
19+
verify.isInCommentAtPosition();
2020

2121
goTo.position(firstCommentEnd);
22-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
22+
verify.not.isInCommentAtPosition();
2323

2424
const multilineJsDocStart = firstCommentEnd + 1;
2525
const multilineJsDocEnd = multilineJsDocStart + 49;
2626

2727
goTo.position(multilineJsDocStart);
28-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
28+
verify.not.isInCommentAtPosition();
2929
goTo.position(multilineJsDocStart + 1);
30-
verify.isInCommentAtPosition(/*onlyMultiLine*/ true);
30+
verify.isInCommentAtPosition();
3131
goTo.position(multilineJsDocEnd - 1);
32-
verify.isInCommentAtPosition(/*onlyMultiLine*/ true);
32+
verify.isInCommentAtPosition();
3333
goTo.position(multilineJsDocEnd);
34-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
34+
verify.not.isInCommentAtPosition();
3535

3636
const singleLineCommentStart = multilineJsDocEnd + 1;
3737

3838
goTo.position(singleLineCommentStart + 1);
39-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
40-
verify.isInCommentAtPosition(/*onlyMultiLine*/ false);
39+
verify.isInCommentAtPosition(/*onlyMultiLineDiverges*/ true);
4140

4241
const postNodeCommentStart = singleLineCommentStart + 16;
4342

4443
goTo.position(postNodeCommentStart);
45-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
44+
verify.not.isInCommentAtPosition();
4645
goTo.position(postNodeCommentStart + 1);
47-
verify.isInCommentAtPosition(/*onlyMultiLine*/ true);
46+
verify.isInCommentAtPosition();

tests/cases/fourslash/isInMultiLineCommentInJsxText.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,5 @@
2323

2424
for (let i = 0; i < 10; ++i) {
2525
goTo.marker(i.toString());
26-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ false);
26+
verify.not.isInCommentAtPosition();
2727
}

tests/cases/fourslash/isInMultiLineCommentInTemplateLiteral.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,5 @@
2323

2424
for (let i = 0; i < 9; ++i) {
2525
goTo.marker(i.toString());
26-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ false);
26+
verify.not.isInCommentAtPosition();
2727
}

tests/cases/fourslash/isInMultiLineCommentOnlyTrivia.ts

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,30 +9,29 @@
99
const firstCommentStart = 0;
1010
const firstCommentEnd = 7;
1111
goTo.position(firstCommentStart);
12-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
12+
verify.not.isInCommentAtPosition();
1313

1414
goTo.position(firstCommentStart + 1);
15-
verify.isInCommentAtPosition(/*onlyMultiLine*/ true);
15+
verify.isInCommentAtPosition();
1616
goTo.position(firstCommentEnd - 1);
17-
verify.isInCommentAtPosition(/*onlyMultiLine*/ true);
17+
verify.isInCommentAtPosition();
1818

1919
goTo.position(firstCommentEnd);
20-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
20+
verify.not.isInCommentAtPosition();
2121

2222
const multilineJsDocStart = firstCommentEnd + 1;
2323
const multilineJsDocEnd = multilineJsDocStart + 49;
2424

2525
goTo.position(multilineJsDocStart);
26-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
26+
verify.not.isInCommentAtPosition();
2727
goTo.position(multilineJsDocStart + 1);
28-
verify.isInCommentAtPosition(/*onlyMultiLine*/ true);
28+
verify.isInCommentAtPosition();
2929
goTo.position(multilineJsDocEnd - 1);
30-
verify.isInCommentAtPosition(/*onlyMultiLine*/ true);
30+
verify.isInCommentAtPosition();
3131
goTo.position(multilineJsDocEnd);
32-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
32+
verify.not.isInCommentAtPosition();
3333

3434
const singleLineCommentStart = multilineJsDocEnd + 1;
3535

3636
goTo.position(singleLineCommentStart + 1);
37-
verify.not.isInCommentAtPosition(/*onlyMultiLine*/ true);
38-
verify.isInCommentAtPosition(/*onlyMultiLine*/ false);
37+
verify.isInCommentAtPosition(/*onlyMultiLineDiverges*/ true);

0 commit comments

Comments
 (0)