kittenipc/kitcom/internal/tsgo/fourslash/tests/gen/getOccurrencesLoopBreakContinue4_test.go
2025-10-15 10:12:44 +03:00

80 lines
2.0 KiB
Go

package fourslash_test
import (
"testing"
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/fourslash"
. "efprojects.com/kitten-ipc/kitcom/internal/tsgo/fourslash/tests/util"
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/testutil"
)
func TestGetOccurrencesLoopBreakContinue4(t *testing.T) {
t.Parallel()
defer testutil.RecoverAndFail(t, "Panic on fourslash test")
const content = `var arr = [1, 2, 3, 4];
label1: for (var n in arr) {
break;
continue;
break label1;
continue label1;
label2: for (var i = 0; i < arr[n]; i++) {
break label1;
continue label1;
break;
continue;
break label2;
continue label2;
function foo() {
label3: while (true) {
break;
continue;
break label3;
continue label3;
// these cross function boundaries
break label1;
continue label1;
break label2;
continue label2;
label4: [|do|] {
[|break|];
[|continue|];
[|break|] label4;
[|continue|] label4;
break label3;
continue label3;
switch (10) {
case 1:
case 2:
break;
[|break|] label4;
default:
[|continue|];
}
// these cross function boundaries
break label1;
continue label1;
break label2;
continue label2;
() => { break; }
} [|wh/**/ile|] (true)
}
}
}
}
label5: while (true) break label5;
label7: while (true) continue label5;`
f := fourslash.NewFourslash(t, nil /*capabilities*/, content)
f.VerifyBaselineDocumentHighlights(t, nil /*preferences*/, ToAny(f.Ranges())...)
}