Add tests

This commit is contained in:
Anders Hejlsberg
2018-12-11 12:11:16 -08:00
parent 44116b5241
commit 2150a64f0c

View File

@@ -141,3 +141,19 @@ function test1<T extends Record<string, any>, K extends keyof T>(t: T, k: K) {
t[k] = "hello"; // Error
t[k] = [10, 20]; // Error
}
// Repro from #28839
function f30<T, K extends keyof T>() {
let x: Partial<Record<keyof T, string>>[K] = "hello";
}
// We simplify indexed accesses applied to mapped types up to five levels deep
function f31<T, K extends keyof T>() {
let x: Partial<Partial<Partial<Partial<Record<keyof T, string>>>>>[K] = "hello";
}
function f32<T, K extends keyof T>() {
let x: Partial<Partial<Partial<Partial<Partial<Record<keyof T, string>>>>>>[K] = "hello";
}