diff --git a/tests/cases/fourslash/formattingOnChainedCallbacks.ts b/tests/cases/fourslash/formattingOnChainedCallbacks.ts new file mode 100644 index 00000000000..0d72364d506 --- /dev/null +++ b/tests/cases/fourslash/formattingOnChainedCallbacks.ts @@ -0,0 +1,40 @@ +/// + +////Promise +//// .resolve() +//// .then(() => {/*1*/""/*2*/ +////}).then(() => {/*3*//*4*/ +////})/*semi1*/ /*semi2*/ + +////function foo() { +//// return Promise.resolve() +//// .then(function () { +//// ""/*a*/ +//// })/*b*/ +////} + +goTo.marker('1'); +edit.insertLine(''); +goTo.marker('2'); +// Expected, with bug 1888: verify.currentLineContentIs(' ""'); +verify.currentLineContentIs(' ""'); +goTo.marker('4'); +edit.insertLine(''); +goTo.marker('3'); +verify.currentLineContentIs(' }).then(() => {'); + +goTo.marker("semi1"); +edit.insert(';'); +// Expected, with bug 1888: verify.currentLineContentIs(' });'); +verify.currentLineContentIs('}); '); +goTo.marker("semi2"); +edit.insert(';'); +verify.currentLineContentIs(' });;'); + +goTo.marker('a'); +edit.insert(';'); +verify.currentLineContentIs(' "";'); +goTo.marker('b'); +edit.insert(';'); +// Expected, with bug 1888: verify.currentLineContentIs(' });'); +verify.currentLineContentIs(' });'); \ No newline at end of file