46 lines
No EOL
1.1 KiB
TypeScript
46 lines
No EOL
1.1 KiB
TypeScript
/// <reference path='fourslash.ts' />
|
|
|
|
const CRLF = "\r\n";
|
|
/**
|
|
* @returns the given value with '\n' normalized to '\r\n' and with no leading newline
|
|
*/
|
|
function useCRLFAndStripLeadingNewline(str: string): string {
|
|
str = str.replace(/\r?\n/g, CRLF);
|
|
if (str.indexOf(CRLF) === 0) {
|
|
str = str.slice(CRLF.length);
|
|
}
|
|
return str;
|
|
}
|
|
|
|
function confirmNormalizedJsDoc(markerName: string, indentation: number, template: string): void {
|
|
goTo.marker(markerName);
|
|
const normalized = useCRLFAndStripLeadingNewline(template);
|
|
verify.DocCommentTemplate(normalized, indentation);
|
|
}
|
|
|
|
const enum Indentation {
|
|
Indented = 12,
|
|
}
|
|
|
|
|
|
////class C {
|
|
//// /*0*/
|
|
//// [Symbol.iterator]() {
|
|
//// return undefined;
|
|
//// }
|
|
//// /*1*/
|
|
//// [1 + 2 + 3 + Math.rand()](x: number, y: string, z = true) { }
|
|
////}
|
|
|
|
confirmNormalizedJsDoc("0", Indentation.Indented,
|
|
`/**
|
|
*
|
|
*/`);
|
|
|
|
confirmNormalizedJsDoc("1", Indentation.Indented,
|
|
`/**
|
|
*
|
|
* @param x
|
|
* @param y
|
|
* @param z
|
|
*/`); |