diff --git a/tests/cases/fourslash/completionsInObjectBindingPattern06.ts b/tests/cases/fourslash/completionsInObjectBindingPattern06.ts
new file mode 100644
index 00000000000..8060c2bde78
--- /dev/null
+++ b/tests/cases/fourslash/completionsInObjectBindingPattern06.ts
@@ -0,0 +1,12 @@
+///
+
+////interface I {
+//// property1: number;
+//// property2: string;
+////}
+////
+////var foo: I;
+////var { property1, property2, /**/ } = foo;
+
+goTo.marker();
+verify.completionListIsEmpty();
\ No newline at end of file
diff --git a/tests/cases/fourslash/completionsInObjectBindingPattern07.ts b/tests/cases/fourslash/completionsInObjectBindingPattern07.ts
new file mode 100644
index 00000000000..a3015346aa3
--- /dev/null
+++ b/tests/cases/fourslash/completionsInObjectBindingPattern07.ts
@@ -0,0 +1,18 @@
+///
+
+////interface I {
+//// propertyOfI_1: number;
+//// propertyOfI_2: string;
+////}
+////interface J {
+//// property1: I;
+//// property2: string;
+////}
+////
+////var foo: J;
+////var { property1: { /**/ } } = foo;
+
+goTo.marker();
+verify.completionListContains("propertyOfI_1");
+verify.completionListContains("propertyOfI_2");
+verify.not.completionListContains("property2");
\ No newline at end of file
diff --git a/tests/cases/fourslash/completionsInObjectBindingPattern08.ts b/tests/cases/fourslash/completionsInObjectBindingPattern08.ts
new file mode 100644
index 00000000000..6d6be330b83
--- /dev/null
+++ b/tests/cases/fourslash/completionsInObjectBindingPattern08.ts
@@ -0,0 +1,18 @@
+///
+
+////interface I {
+//// propertyOfI_1: number;
+//// propertyOfI_2: string;
+////}
+////interface J {
+//// property1: I;
+//// property2: string;
+////}
+////
+////var foo: J;
+////var { property1: { propertyOfI_1, /**/ } } = foo;
+
+goTo.marker();
+verify.completionListContains("propertyOfI_2");
+verify.not.completionListContains("propertyOfI_1");
+verify.not.completionListContains("property2");
\ No newline at end of file
diff --git a/tests/cases/fourslash/completionsInObjectBindingPattern09.ts b/tests/cases/fourslash/completionsInObjectBindingPattern09.ts
new file mode 100644
index 00000000000..2698e78667b
--- /dev/null
+++ b/tests/cases/fourslash/completionsInObjectBindingPattern09.ts
@@ -0,0 +1,19 @@
+///
+
+////interface I {
+//// propertyOfI_1: number;
+//// propertyOfI_2: string;
+////}
+////interface J {
+//// property1: I;
+//// property2: string;
+////}
+////
+////var foo: J;
+////var { property1: { propertyOfI_1, }, /**/ } = foo;
+
+goTo.marker();
+verify.completionListContains("property2");
+verify.not.completionListContains("property1");
+verify.not.completionListContains("propertyOfI_2");
+verify.not.completionListContains("propertyOfI_1");
\ No newline at end of file