@@ -1345,7 +1345,8 @@ test(
13451345 getOverlayDatabaseModeMacro,
13461346 "Ignore feature flag when analyzing non-default branch",
13471347 {
1348- features: [Feature.OverlayAnalysis],
1348+ languages: [Language.javascript],
1349+ features: [Feature.OverlayAnalysis, Feature.OverlayAnalysisJavascript],
13491350 },
13501351 {
13511352 overlayDatabaseMode: OverlayDatabaseMode.None,
@@ -1357,7 +1358,8 @@ test(
13571358 getOverlayDatabaseModeMacro,
13581359 "Overlay-base database on default branch when feature enabled",
13591360 {
1360- features: [Feature.OverlayAnalysis],
1361+ languages: [Language.javascript],
1362+ features: [Feature.OverlayAnalysis, Feature.OverlayAnalysisJavascript],
13611363 isDefaultBranch: true,
13621364 },
13631365 {
@@ -1368,8 +1370,10 @@ test(
13681370
13691371test(
13701372 getOverlayDatabaseModeMacro,
1371- "No overlay-base database on default branch when feature disabled",
1373+ "No overlay-base database on default branch when overall feature disabled",
13721374 {
1375+ languages: [Language.javascript],
1376+ features: [Feature.OverlayAnalysisJavascript],
13731377 isDefaultBranch: true,
13741378 },
13751379 {
@@ -1380,9 +1384,24 @@ test(
13801384
13811385test(
13821386 getOverlayDatabaseModeMacro,
1383- "Overlay analysis on PR when feature enabled ",
1387+ "No overlay-base database on default branch when language-specific feature disabled ",
13841388 {
1389+ languages: [Language.javascript],
13851390 features: [Feature.OverlayAnalysis],
1391+ isDefaultBranch: true,
1392+ },
1393+ {
1394+ overlayDatabaseMode: OverlayDatabaseMode.None,
1395+ useOverlayDatabaseCaching: false,
1396+ },
1397+ );
1398+
1399+ test(
1400+ getOverlayDatabaseModeMacro,
1401+ "Overlay analysis on PR when feature enabled",
1402+ {
1403+ languages: [Language.javascript],
1404+ features: [Feature.OverlayAnalysis, Feature.OverlayAnalysisJavascript],
13861405 isPullRequest: true,
13871406 },
13881407 {
@@ -1393,8 +1412,24 @@ test(
13931412
13941413test(
13951414 getOverlayDatabaseModeMacro,
1396- "No overlay analysis on PR when feature disabled",
1415+ "No overlay analysis on PR when overall feature disabled",
1416+ {
1417+ languages: [Language.javascript],
1418+ features: [Feature.OverlayAnalysisJavascript],
1419+ isPullRequest: true,
1420+ },
1421+ {
1422+ overlayDatabaseMode: OverlayDatabaseMode.None,
1423+ useOverlayDatabaseCaching: false,
1424+ },
1425+ );
1426+
1427+ test(
1428+ getOverlayDatabaseModeMacro,
1429+ "No overlay analysis on PR when language-specific feature disabled",
13971430 {
1431+ languages: [Language.javascript],
1432+ features: [Feature.OverlayAnalysis],
13981433 isPullRequest: true,
13991434 },
14001435 {
@@ -1433,7 +1468,8 @@ test(
14331468 getOverlayDatabaseModeMacro,
14341469 "Overlay PR analysis by feature flag for dsp-testing",
14351470 {
1436- features: [Feature.OverlayAnalysis],
1471+ languages: [Language.javascript],
1472+ features: [Feature.OverlayAnalysis, Feature.OverlayAnalysisJavascript],
14371473 isPullRequest: true,
14381474 repositoryOwner: "dsp-testing",
14391475 },
@@ -1447,7 +1483,8 @@ test(
14471483 getOverlayDatabaseModeMacro,
14481484 "No overlay PR analysis by feature flag for other-org",
14491485 {
1450- features: [Feature.OverlayAnalysis],
1486+ languages: [Language.javascript],
1487+ features: [Feature.OverlayAnalysis, Feature.OverlayAnalysisJavascript],
14511488 isPullRequest: true,
14521489 repositoryOwner: "other-org",
14531490 },
@@ -1510,3 +1547,20 @@ test(
15101547 useOverlayDatabaseCaching: false,
15111548 },
15121549);
1550+
1551+ // Exercise language-specific overlay analysis features code paths
1552+ for (const language in Language) {
1553+ test(
1554+ getOverlayDatabaseModeMacro,
1555+ `Check default overlay analysis feature for ${language}`,
1556+ {
1557+ languages: [language as Language],
1558+ features: [Feature.OverlayAnalysis],
1559+ isPullRequest: true,
1560+ },
1561+ {
1562+ overlayDatabaseMode: OverlayDatabaseMode.None,
1563+ useOverlayDatabaseCaching: false,
1564+ },
1565+ );
1566+ }
0 commit comments