From 2200d3538563477af556cef98816525df9edb142 Mon Sep 17 00:00:00 2001 From: Anders Hejlsberg Date: Fri, 18 Jan 2019 09:34:38 -0800 Subject: [PATCH] Add tests --- .../restParameters/readonlyRestParameters.ts | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 tests/cases/conformance/es6/restParameters/readonlyRestParameters.ts diff --git a/tests/cases/conformance/es6/restParameters/readonlyRestParameters.ts b/tests/cases/conformance/es6/restParameters/readonlyRestParameters.ts new file mode 100644 index 00000000000..99b939dfd57 --- /dev/null +++ b/tests/cases/conformance/es6/restParameters/readonlyRestParameters.ts @@ -0,0 +1,29 @@ +// @strict: true +// @declaration: true + +function f0(a: string, b: string) { + f0(a, b); + f1(a, b); + f2(a, b); +} + +function f1(...args: readonly string[]) { + f0(...args); // Error + f1('abc', 'def'); + f1('abc', ...args); + f1(...args); +} + +function f2(...args: readonly [string, string]) { + f0(...args); + f1('abc', 'def'); + f1('abc', ...args); + f1(...args); + f2('abc', 'def'); + f2('abc', ...args); // Error + f2(...args); +} + +function f4(...args: readonly string[]) { + args[0] = 'abc'; // Error +}