diff --git a/tests/cases/fourslash/server/occurrences01.ts b/tests/cases/fourslash/server/occurrences01.ts
new file mode 100644
index 0000000000..62f445ac69
--- /dev/null
+++ b/tests/cases/fourslash/server/occurrences01.ts
@@ -0,0 +1,27 @@
+///
+
+////foo: [|switch|] (10) {
+//// [|case|] 1:
+//// [|case|] 2:
+//// [|case|] 3:
+//// [|break|];
+//// [|break|] foo;
+//// co/*1*/ntinue;
+//// contin/*2*/ue foo;
+////}
+
+let ranges = test.ranges();
+
+for (let r of ranges) {
+ goTo.position(r.start);
+ verify.occurrencesAtPositionCount(ranges.length);
+
+ for (let range of ranges) {
+ verify.occurrencesAtPositionContains(range, false);
+ }
+}
+
+for (let m of test.markers()) {
+ goTo.position(m.position);
+ verify.occurrencesAtPositionCount(0);
+}
\ No newline at end of file
diff --git a/tests/cases/fourslash/server/occurrences02.ts b/tests/cases/fourslash/server/occurrences02.ts
new file mode 100644
index 0000000000..511e7887c2
--- /dev/null
+++ b/tests/cases/fourslash/server/occurrences02.ts
@@ -0,0 +1,16 @@
+///
+
+////function [|f|](x: typeof [|f|]) {
+//// [|f|]([|f|]);
+////}
+
+let ranges = test.ranges();
+
+for (let r of ranges) {
+ goTo.position(r.start);
+ verify.occurrencesAtPositionCount(ranges.length);
+
+ for (let range of ranges) {
+ verify.occurrencesAtPositionContains(range, false);
+ }
+}
\ No newline at end of file