diff --git a/es6-promise/es6-promise-tests.ts b/es6-promise/es6-promise-tests.ts index dc54f3b1ba..0980ac26cc 100644 --- a/es6-promise/es6-promise-tests.ts +++ b/es6-promise/es6-promise-tests.ts @@ -160,3 +160,32 @@ getJSON('story.json').then(function(story: Story) { }).then(function() { (document.querySelector('.spinner')).style.display = 'none'; }); + +interface T1 { + __t1: string; +} + +interface T2 { + __t2: string; +} + +interface T3 { + __t3: string; +} + +function f1(): Promise { + return Promise.resolve({ __t1: "foo_t1" }); +} + +function f2(x: T1): T2 { + return { __t2: x.__t1 + ":foo_21" }; +} + +var x3 = f1() + .then(f2, (e: Error) => { + console.log("error 1"); + throw e; +}) + .then((x: T2) => { + return { __t3: x.__t2 + "bar" }; +}); \ No newline at end of file