From ecdc4b363e75ad98de253dfdf858ff62d627b337 Mon Sep 17 00:00:00 2001 From: Nathan Shively-Sanders Date: Thu, 19 Oct 2017 09:12:49 -0700 Subject: [PATCH] Test:jsdoc @param errors on vardecls/assignments --- ...ramOnVariableDeclaredFunctionExpression.js | 26 +++++++++++++++++++ ...VariableDeclaredFunctionExpression.symbols | 23 ++++++++++++++++ ...OnVariableDeclaredFunctionExpression.types | 26 +++++++++++++++++++ ...ramOnVariableDeclaredFunctionExpression.ts | 15 +++++++++++ 4 files changed, 90 insertions(+) create mode 100644 tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.js create mode 100644 tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.symbols create mode 100644 tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.types create mode 100644 tests/cases/conformance/jsdoc/checkJsdocParamOnVariableDeclaredFunctionExpression.ts diff --git a/tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.js b/tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.js new file mode 100644 index 00000000000..312e62b8435 --- /dev/null +++ b/tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.js @@ -0,0 +1,26 @@ +//// [0.js] +// @ts-check +/** + * @param {number=} n + * @param {string} [s] + */ +var x = function foo(n, s) {} +var y; +/** + * @param {boolean!} b + */ +y = function bar(b) {} + + +//// [0.js] +// @ts-check +/** + * @param {number=} n + * @param {string} [s] + */ +var x = function foo(n, s) { }; +var y; +/** + * @param {boolean!} b + */ +y = function bar(b) { }; diff --git a/tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.symbols b/tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.symbols new file mode 100644 index 00000000000..26bf26e1a4a --- /dev/null +++ b/tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.symbols @@ -0,0 +1,23 @@ +=== tests/cases/conformance/jsdoc/0.js === +// @ts-check +/** + * @param {number=} n + * @param {string} [s] + */ +var x = function foo(n, s) {} +>x : Symbol(x, Decl(0.js, 5, 3)) +>foo : Symbol(foo, Decl(0.js, 5, 7)) +>n : Symbol(n, Decl(0.js, 5, 21)) +>s : Symbol(s, Decl(0.js, 5, 23)) + +var y; +>y : Symbol(y, Decl(0.js, 6, 3)) + +/** + * @param {boolean!} b + */ +y = function bar(b) {} +>y : Symbol(y, Decl(0.js, 6, 3)) +>bar : Symbol(bar, Decl(0.js, 10, 3)) +>b : Symbol(b, Decl(0.js, 10, 17)) + diff --git a/tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.types b/tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.types new file mode 100644 index 00000000000..f9537219e20 --- /dev/null +++ b/tests/baselines/reference/checkJsdocParamOnVariableDeclaredFunctionExpression.types @@ -0,0 +1,26 @@ +=== tests/cases/conformance/jsdoc/0.js === +// @ts-check +/** + * @param {number=} n + * @param {string} [s] + */ +var x = function foo(n, s) {} +>x : (n?: number, s?: string) => void +>function foo(n, s) {} : (n?: number, s?: string) => void +>foo : (n?: number, s?: string) => void +>n : number +>s : string + +var y; +>y : any + +/** + * @param {boolean!} b + */ +y = function bar(b) {} +>y = function bar(b) {} : (b: boolean) => void +>y : any +>function bar(b) {} : (b: boolean) => void +>bar : (b: boolean) => void +>b : boolean + diff --git a/tests/cases/conformance/jsdoc/checkJsdocParamOnVariableDeclaredFunctionExpression.ts b/tests/cases/conformance/jsdoc/checkJsdocParamOnVariableDeclaredFunctionExpression.ts new file mode 100644 index 00000000000..7443357337a --- /dev/null +++ b/tests/cases/conformance/jsdoc/checkJsdocParamOnVariableDeclaredFunctionExpression.ts @@ -0,0 +1,15 @@ +// @allowJS: true +// @suppressOutputPathCheck: true + +// @filename: 0.js +// @ts-check +/** + * @param {number=} n + * @param {string} [s] + */ +var x = function foo(n, s) {} +var y; +/** + * @param {boolean!} b + */ +y = function bar(b) {}