@@ -1202,6 +1202,7 @@ interface OverlayDatabaseModeTestSetup {
12021202 languages : Language [ ] ;
12031203 codeqlVersion : string ;
12041204 gitRoot : string | undefined ;
1205+ codeScanningConfig : configUtils . UserConfig ;
12051206}
12061207
12071208const defaultOverlayDatabaseModeTestSetup : OverlayDatabaseModeTestSetup = {
@@ -1214,6 +1215,7 @@ const defaultOverlayDatabaseModeTestSetup: OverlayDatabaseModeTestSetup = {
12141215 languages : [ Language . javascript ] ,
12151216 codeqlVersion : "2.21.0" ,
12161217 gitRoot : "/some/git/root" ,
1218+ codeScanningConfig : { } ,
12171219} ;
12181220
12191221const getOverlayDatabaseModeMacro = test . macro ( {
@@ -1280,6 +1282,7 @@ const getOverlayDatabaseModeMacro = test.macro({
12801282 setup . languages ,
12811283 tempDir , // sourceRoot
12821284 setup . buildMode ,
1285+ setup . codeScanningConfig ,
12831286 logger ,
12841287 ) ;
12851288
@@ -1370,7 +1373,121 @@ test(
13701373
13711374test (
13721375 getOverlayDatabaseModeMacro ,
1373- "No overlay-base database on default branch when overall feature disabled" ,
1376+ "Overlay-base database on default branch when feature enabled with custom analysis" ,
1377+ {
1378+ languages : [ Language . javascript ] ,
1379+ features : [ Feature . OverlayAnalysis , Feature . OverlayAnalysisJavascript ] ,
1380+ codeScanningConfig : {
1381+ 1382+ } as configUtils . UserConfig ,
1383+ isDefaultBranch : true ,
1384+ } ,
1385+ {
1386+ overlayDatabaseMode : OverlayDatabaseMode . OverlayBase ,
1387+ useOverlayDatabaseCaching : true ,
1388+ } ,
1389+ ) ;
1390+
1391+ test (
1392+ getOverlayDatabaseModeMacro ,
1393+ "Overlay-base database on default branch when code-scanning feature enabled" ,
1394+ {
1395+ languages : [ Language . javascript ] ,
1396+ features : [
1397+ Feature . OverlayAnalysis ,
1398+ Feature . OverlayAnalysisCodeScanningJavascript ,
1399+ ] ,
1400+ isDefaultBranch : true ,
1401+ } ,
1402+ {
1403+ overlayDatabaseMode : OverlayDatabaseMode . OverlayBase ,
1404+ useOverlayDatabaseCaching : true ,
1405+ } ,
1406+ ) ;
1407+
1408+ test (
1409+ getOverlayDatabaseModeMacro ,
1410+ "No overlay-base database on default branch when code-scanning feature enabled with disable-default-queries" ,
1411+ {
1412+ languages : [ Language . javascript ] ,
1413+ features : [
1414+ Feature . OverlayAnalysis ,
1415+ Feature . OverlayAnalysisCodeScanningJavascript ,
1416+ ] ,
1417+ codeScanningConfig : {
1418+ "disable-default-queries" : true ,
1419+ } as configUtils . UserConfig ,
1420+ isDefaultBranch : true ,
1421+ } ,
1422+ {
1423+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1424+ useOverlayDatabaseCaching : false ,
1425+ } ,
1426+ ) ;
1427+
1428+ test (
1429+ getOverlayDatabaseModeMacro ,
1430+ "No overlay-base database on default branch when code-scanning feature enabled with packs" ,
1431+ {
1432+ languages : [ Language . javascript ] ,
1433+ features : [
1434+ Feature . OverlayAnalysis ,
1435+ Feature . OverlayAnalysisCodeScanningJavascript ,
1436+ ] ,
1437+ codeScanningConfig : {
1438+ 1439+ } as configUtils . UserConfig ,
1440+ isDefaultBranch : true ,
1441+ } ,
1442+ {
1443+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1444+ useOverlayDatabaseCaching : false ,
1445+ } ,
1446+ ) ;
1447+
1448+ test (
1449+ getOverlayDatabaseModeMacro ,
1450+ "No overlay-base database on default branch when code-scanning feature enabled with queries" ,
1451+ {
1452+ languages : [ Language . javascript ] ,
1453+ features : [
1454+ Feature . OverlayAnalysis ,
1455+ Feature . OverlayAnalysisCodeScanningJavascript ,
1456+ ] ,
1457+ codeScanningConfig : {
1458+ queries : [ { uses : "some-query.ql" } ] ,
1459+ } as configUtils . UserConfig ,
1460+ isDefaultBranch : true ,
1461+ } ,
1462+ {
1463+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1464+ useOverlayDatabaseCaching : false ,
1465+ } ,
1466+ ) ;
1467+
1468+ test (
1469+ getOverlayDatabaseModeMacro ,
1470+ "No overlay-base database on default branch when code-scanning feature enabled with query-filters" ,
1471+ {
1472+ languages : [ Language . javascript ] ,
1473+ features : [
1474+ Feature . OverlayAnalysis ,
1475+ Feature . OverlayAnalysisCodeScanningJavascript ,
1476+ ] ,
1477+ codeScanningConfig : {
1478+ "query-filters" : [ { include : { "security-severity" : "high" } } ] ,
1479+ } as configUtils . UserConfig ,
1480+ isDefaultBranch : true ,
1481+ } ,
1482+ {
1483+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1484+ useOverlayDatabaseCaching : false ,
1485+ } ,
1486+ ) ;
1487+
1488+ test (
1489+ getOverlayDatabaseModeMacro ,
1490+ "No overlay-base database on default branch when only language-specific feature enabled" ,
13741491 {
13751492 languages : [ Language . javascript ] ,
13761493 features : [ Feature . OverlayAnalysisJavascript ] ,
@@ -1382,6 +1499,20 @@ test(
13821499 } ,
13831500) ;
13841501
1502+ test (
1503+ getOverlayDatabaseModeMacro ,
1504+ "No overlay-base database on default branch when only code-scanning feature enabled" ,
1505+ {
1506+ languages : [ Language . javascript ] ,
1507+ features : [ Feature . OverlayAnalysisCodeScanningJavascript ] ,
1508+ isDefaultBranch : true ,
1509+ } ,
1510+ {
1511+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1512+ useOverlayDatabaseCaching : false ,
1513+ } ,
1514+ ) ;
1515+
13851516test (
13861517 getOverlayDatabaseModeMacro ,
13871518 "No overlay-base database on default branch when language-specific feature disabled" ,
@@ -1412,7 +1543,121 @@ test(
14121543
14131544test (
14141545 getOverlayDatabaseModeMacro ,
1415- "No overlay analysis on PR when overall feature disabled" ,
1546+ "Overlay analysis on PR when feature enabled with custom analysis" ,
1547+ {
1548+ languages : [ Language . javascript ] ,
1549+ features : [ Feature . OverlayAnalysis , Feature . OverlayAnalysisJavascript ] ,
1550+ codeScanningConfig : {
1551+ 1552+ } as configUtils . UserConfig ,
1553+ isPullRequest : true ,
1554+ } ,
1555+ {
1556+ overlayDatabaseMode : OverlayDatabaseMode . Overlay ,
1557+ useOverlayDatabaseCaching : true ,
1558+ } ,
1559+ ) ;
1560+
1561+ test (
1562+ getOverlayDatabaseModeMacro ,
1563+ "Overlay analysis on PR when code-scanning feature enabled" ,
1564+ {
1565+ languages : [ Language . javascript ] ,
1566+ features : [
1567+ Feature . OverlayAnalysis ,
1568+ Feature . OverlayAnalysisCodeScanningJavascript ,
1569+ ] ,
1570+ isPullRequest : true ,
1571+ } ,
1572+ {
1573+ overlayDatabaseMode : OverlayDatabaseMode . Overlay ,
1574+ useOverlayDatabaseCaching : true ,
1575+ } ,
1576+ ) ;
1577+
1578+ test (
1579+ getOverlayDatabaseModeMacro ,
1580+ "No overlay analysis on PR when code-scanning feature enabled with disable-default-queries" ,
1581+ {
1582+ languages : [ Language . javascript ] ,
1583+ features : [
1584+ Feature . OverlayAnalysis ,
1585+ Feature . OverlayAnalysisCodeScanningJavascript ,
1586+ ] ,
1587+ codeScanningConfig : {
1588+ "disable-default-queries" : true ,
1589+ } as configUtils . UserConfig ,
1590+ isPullRequest : true ,
1591+ } ,
1592+ {
1593+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1594+ useOverlayDatabaseCaching : false ,
1595+ } ,
1596+ ) ;
1597+
1598+ test (
1599+ getOverlayDatabaseModeMacro ,
1600+ "No overlay analysis on PR when code-scanning feature enabled with packs" ,
1601+ {
1602+ languages : [ Language . javascript ] ,
1603+ features : [
1604+ Feature . OverlayAnalysis ,
1605+ Feature . OverlayAnalysisCodeScanningJavascript ,
1606+ ] ,
1607+ codeScanningConfig : {
1608+ 1609+ } as configUtils . UserConfig ,
1610+ isPullRequest : true ,
1611+ } ,
1612+ {
1613+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1614+ useOverlayDatabaseCaching : false ,
1615+ } ,
1616+ ) ;
1617+
1618+ test (
1619+ getOverlayDatabaseModeMacro ,
1620+ "No overlay analysis on PR when code-scanning feature enabled with queries" ,
1621+ {
1622+ languages : [ Language . javascript ] ,
1623+ features : [
1624+ Feature . OverlayAnalysis ,
1625+ Feature . OverlayAnalysisCodeScanningJavascript ,
1626+ ] ,
1627+ codeScanningConfig : {
1628+ queries : [ { uses : "some-query.ql" } ] ,
1629+ } as configUtils . UserConfig ,
1630+ isPullRequest : true ,
1631+ } ,
1632+ {
1633+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1634+ useOverlayDatabaseCaching : false ,
1635+ } ,
1636+ ) ;
1637+
1638+ test (
1639+ getOverlayDatabaseModeMacro ,
1640+ "No overlay analysis on PR when code-scanning feature enabled with query-filters" ,
1641+ {
1642+ languages : [ Language . javascript ] ,
1643+ features : [
1644+ Feature . OverlayAnalysis ,
1645+ Feature . OverlayAnalysisCodeScanningJavascript ,
1646+ ] ,
1647+ codeScanningConfig : {
1648+ "query-filters" : [ { include : { "security-severity" : "high" } } ] ,
1649+ } as configUtils . UserConfig ,
1650+ isPullRequest : true ,
1651+ } ,
1652+ {
1653+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1654+ useOverlayDatabaseCaching : false ,
1655+ } ,
1656+ ) ;
1657+
1658+ test (
1659+ getOverlayDatabaseModeMacro ,
1660+ "No overlay analysis on PR when only language-specific feature enabled" ,
14161661 {
14171662 languages : [ Language . javascript ] ,
14181663 features : [ Feature . OverlayAnalysisJavascript ] ,
@@ -1424,6 +1669,20 @@ test(
14241669 } ,
14251670) ;
14261671
1672+ test (
1673+ getOverlayDatabaseModeMacro ,
1674+ "No overlay analysis on PR when only code-scanning feature enabled" ,
1675+ {
1676+ languages : [ Language . javascript ] ,
1677+ features : [ Feature . OverlayAnalysisCodeScanningJavascript ] ,
1678+ isPullRequest : true ,
1679+ } ,
1680+ {
1681+ overlayDatabaseMode : OverlayDatabaseMode . None ,
1682+ useOverlayDatabaseCaching : false ,
1683+ } ,
1684+ ) ;
1685+
14271686test (
14281687 getOverlayDatabaseModeMacro ,
14291688 "No overlay analysis on PR when language-specific feature disabled" ,
0 commit comments