From 1798024f4fa76c8fb224386802098e98684b1511 Mon Sep 17 00:00:00 2001 From: Anders Hejlsberg Date: Wed, 6 Jan 2016 16:13:02 -0800 Subject: [PATCH] Updating tests --- .../reference/for-inStatementsArray.js | 51 +++++++++++ .../reference/for-inStatementsArray.symbols | 78 +++++++++++++++++ .../reference/for-inStatementsArray.types | 85 +++++++++++++++++++ .../for-inStatements/for-inStatementsArray.ts | 27 ++++++ 4 files changed, 241 insertions(+) diff --git a/tests/baselines/reference/for-inStatementsArray.js b/tests/baselines/reference/for-inStatementsArray.js index 5df8b41a2c2..e3d331e2d8c 100644 --- a/tests/baselines/reference/for-inStatementsArray.js +++ b/tests/baselines/reference/for-inStatementsArray.js @@ -10,6 +10,33 @@ for (let x in a) { let b2 = b[(x)]; let b3 = b[+x]; } + +for (let x in a) { + for (let y in a) { + for (let z in a) { + let a1 = a[x]; + let a2 = a[y]; + let a3 = a[z]; + } + } +} + +let i: string; +let j: string; +for (i in a) { + for (j in b) { + let a1 = a[i]; + let a2 = a[j]; + } +} + +var s: string; +for (var s in a) { + let a1 = a[s]; +} +for (s in a) { + let a1 = a[s]; +} //// [for-inStatementsArray.js] @@ -23,3 +50,27 @@ for (var x in a) { var b2 = b[(x)]; var b3 = b[+x]; } +for (var x in a) { + for (var y in a) { + for (var z in a) { + var a1 = a[x]; + var a2 = a[y]; + var a3 = a[z]; + } + } +} +var i; +var j; +for (i in a) { + for (j in b) { + var a1 = a[i]; + var a2 = a[j]; + } +} +var s; +for (var s in a) { + var a1 = a[s]; +} +for (s in a) { + var a1 = a[s]; +} diff --git a/tests/baselines/reference/for-inStatementsArray.symbols b/tests/baselines/reference/for-inStatementsArray.symbols index bcf0957514b..5b6ea9385cd 100644 --- a/tests/baselines/reference/for-inStatementsArray.symbols +++ b/tests/baselines/reference/for-inStatementsArray.symbols @@ -41,3 +41,81 @@ for (let x in a) { >x : Symbol(x, Decl(for-inStatementsArray.ts, 3, 8)) } +for (let x in a) { +>x : Symbol(x, Decl(for-inStatementsArray.ts, 12, 8)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) + + for (let y in a) { +>y : Symbol(y, Decl(for-inStatementsArray.ts, 13, 12)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) + + for (let z in a) { +>z : Symbol(z, Decl(for-inStatementsArray.ts, 14, 16)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) + + let a1 = a[x]; +>a1 : Symbol(a1, Decl(for-inStatementsArray.ts, 15, 15)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) +>x : Symbol(x, Decl(for-inStatementsArray.ts, 12, 8)) + + let a2 = a[y]; +>a2 : Symbol(a2, Decl(for-inStatementsArray.ts, 16, 15)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) +>y : Symbol(y, Decl(for-inStatementsArray.ts, 13, 12)) + + let a3 = a[z]; +>a3 : Symbol(a3, Decl(for-inStatementsArray.ts, 17, 15)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) +>z : Symbol(z, Decl(for-inStatementsArray.ts, 14, 16)) + } + } +} + +let i: string; +>i : Symbol(i, Decl(for-inStatementsArray.ts, 22, 3)) + +let j: string; +>j : Symbol(j, Decl(for-inStatementsArray.ts, 23, 3)) + +for (i in a) { +>i : Symbol(i, Decl(for-inStatementsArray.ts, 22, 3)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) + + for (j in b) { +>j : Symbol(j, Decl(for-inStatementsArray.ts, 23, 3)) +>b : Symbol(b, Decl(for-inStatementsArray.ts, 1, 3)) + + let a1 = a[i]; +>a1 : Symbol(a1, Decl(for-inStatementsArray.ts, 26, 11)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) +>i : Symbol(i, Decl(for-inStatementsArray.ts, 22, 3)) + + let a2 = a[j]; +>a2 : Symbol(a2, Decl(for-inStatementsArray.ts, 27, 11)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) +>j : Symbol(j, Decl(for-inStatementsArray.ts, 23, 3)) + } +} + +var s: string; +>s : Symbol(s, Decl(for-inStatementsArray.ts, 31, 3), Decl(for-inStatementsArray.ts, 32, 8)) + +for (var s in a) { +>s : Symbol(s, Decl(for-inStatementsArray.ts, 31, 3), Decl(for-inStatementsArray.ts, 32, 8)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) + + let a1 = a[s]; +>a1 : Symbol(a1, Decl(for-inStatementsArray.ts, 33, 7)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) +>s : Symbol(s, Decl(for-inStatementsArray.ts, 31, 3), Decl(for-inStatementsArray.ts, 32, 8)) +} +for (s in a) { +>s : Symbol(s, Decl(for-inStatementsArray.ts, 31, 3), Decl(for-inStatementsArray.ts, 32, 8)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) + + let a1 = a[s]; +>a1 : Symbol(a1, Decl(for-inStatementsArray.ts, 36, 7)) +>a : Symbol(a, Decl(for-inStatementsArray.ts, 0, 3)) +>s : Symbol(s, Decl(for-inStatementsArray.ts, 31, 3), Decl(for-inStatementsArray.ts, 32, 8)) +} + diff --git a/tests/baselines/reference/for-inStatementsArray.types b/tests/baselines/reference/for-inStatementsArray.types index d5edc2090e6..048b2819ff7 100644 --- a/tests/baselines/reference/for-inStatementsArray.types +++ b/tests/baselines/reference/for-inStatementsArray.types @@ -51,3 +51,88 @@ for (let x in a) { >x : string } +for (let x in a) { +>x : string +>a : Date[] + + for (let y in a) { +>y : string +>a : Date[] + + for (let z in a) { +>z : string +>a : Date[] + + let a1 = a[x]; +>a1 : Date +>a[x] : Date +>a : Date[] +>x : string + + let a2 = a[y]; +>a2 : Date +>a[y] : Date +>a : Date[] +>y : string + + let a3 = a[z]; +>a3 : Date +>a[z] : Date +>a : Date[] +>z : string + } + } +} + +let i: string; +>i : string + +let j: string; +>j : string + +for (i in a) { +>i : string +>a : Date[] + + for (j in b) { +>j : string +>b : boolean[] + + let a1 = a[i]; +>a1 : Date +>a[i] : Date +>a : Date[] +>i : string + + let a2 = a[j]; +>a2 : Date +>a[j] : Date +>a : Date[] +>j : string + } +} + +var s: string; +>s : string + +for (var s in a) { +>s : string +>a : Date[] + + let a1 = a[s]; +>a1 : Date +>a[s] : Date +>a : Date[] +>s : string +} +for (s in a) { +>s : string +>a : Date[] + + let a1 = a[s]; +>a1 : Date +>a[s] : Date +>a : Date[] +>s : string +} + diff --git a/tests/cases/conformance/statements/for-inStatements/for-inStatementsArray.ts b/tests/cases/conformance/statements/for-inStatements/for-inStatementsArray.ts index e8dc484c0fa..6acf8d4b355 100644 --- a/tests/cases/conformance/statements/for-inStatements/for-inStatementsArray.ts +++ b/tests/cases/conformance/statements/for-inStatements/for-inStatementsArray.ts @@ -9,3 +9,30 @@ for (let x in a) { let b2 = b[(x)]; let b3 = b[+x]; } + +for (let x in a) { + for (let y in a) { + for (let z in a) { + let a1 = a[x]; + let a2 = a[y]; + let a3 = a[z]; + } + } +} + +let i: string; +let j: string; +for (i in a) { + for (j in b) { + let a1 = a[i]; + let a2 = a[j]; + } +} + +var s: string; +for (var s in a) { + let a1 = a[s]; +} +for (s in a) { + let a1 = a[s]; +}