From e08dce2c21a251e88e51db49d389ac12bcea3373 Mon Sep 17 00:00:00 2001 From: Andrew Casey Date: Thu, 17 Aug 2017 14:54:25 -0700 Subject: [PATCH] Test different parameters on classes and methods --- src/harness/unittests/extractMethods.ts | 14 +++++++++++ .../extractMethod/extractMethod17.ts | 25 +++++++++++++++++++ .../extractMethod/extractMethod18.ts | 25 +++++++++++++++++++ 3 files changed, 64 insertions(+) create mode 100644 tests/baselines/reference/extractMethod/extractMethod17.ts create mode 100644 tests/baselines/reference/extractMethod/extractMethod18.ts diff --git a/src/harness/unittests/extractMethods.ts b/src/harness/unittests/extractMethods.ts index 7d7125c5025..227f6b22b03 100644 --- a/src/harness/unittests/extractMethods.ts +++ b/src/harness/unittests/extractMethods.ts @@ -586,6 +586,20 @@ namespace A { testExtractMethod("extractMethod16", `function F() { const array: T[] = [#|[]|]; +}`); + // Class type parameter + testExtractMethod("extractMethod17", + `class C { + M(t1: T1, t2: T2) { + [#|t1.toString()|]; + } +}`); + // Method type parameter + testExtractMethod("extractMethod18", + `class C { + M(t1: T1, t2: T2) { + [#|t1.toString()|]; + } }`); }); diff --git a/tests/baselines/reference/extractMethod/extractMethod17.ts b/tests/baselines/reference/extractMethod/extractMethod17.ts new file mode 100644 index 00000000000..d800c79f3bd --- /dev/null +++ b/tests/baselines/reference/extractMethod/extractMethod17.ts @@ -0,0 +1,25 @@ +// ==ORIGINAL== +class C { + M(t1: T1, t2: T2) { + t1.toString(); + } +} +// ==SCOPE::class 'C'== +class C { + M(t1: T1, t2: T2) { + this.newFunction(t1); + } + + private newFunction(t1: T1) { + t1.toString(); + } +} +// ==SCOPE::global scope== +class C { + M(t1: T1, t2: T2) { + newFunction(t1); + } +} +function newFunction(t1: T1) { + t1.toString(); +} diff --git a/tests/baselines/reference/extractMethod/extractMethod18.ts b/tests/baselines/reference/extractMethod/extractMethod18.ts new file mode 100644 index 00000000000..ce6a90c3790 --- /dev/null +++ b/tests/baselines/reference/extractMethod/extractMethod18.ts @@ -0,0 +1,25 @@ +// ==ORIGINAL== +class C { + M(t1: T1, t2: T2) { + t1.toString(); + } +} +// ==SCOPE::class 'C'== +class C { + M(t1: T1, t2: T2) { + this.newFunction(t1); + } + + private newFunction(t1: T1) { + t1.toString(); + } +} +// ==SCOPE::global scope== +class C { + M(t1: T1, t2: T2) { + newFunction(t1); + } +} +function newFunction(t1: T1) { + t1.toString(); +}