@@ -87,6 +87,7 @@ func TestSquashJoins(t *testing.T) {
87
87
),
88
88
lit (4 ),
89
89
},
90
+ nil ,
90
91
gitbase .RepositoriesTableName ,
91
92
gitbase .ReferencesTableName ,
92
93
gitbase .CommitsTableName ,
@@ -149,6 +150,7 @@ func TestSquashJoinsIndexes(t *testing.T) {
149
150
col (0 , gitbase .CommitTreesTableName , "commit_hash" ),
150
151
),
151
152
},
153
+ []string {gitbase .CommitsTableName },
152
154
gitbase .CommitsTableName ,
153
155
gitbase .CommitTreesTableName ,
154
156
),
@@ -238,6 +240,7 @@ func TestSquashJoinsPartial(t *testing.T) {
238
240
),
239
241
lit (4 ),
240
242
},
243
+ nil ,
241
244
gitbase .RepositoriesTableName ,
242
245
gitbase .ReferencesTableName ,
243
246
),
@@ -674,6 +677,7 @@ func TestBuildSquashedTable(t *testing.T) {
674
677
repoRemotesFilter ,
675
678
remotesFilter ,
676
679
},
680
+ nil ,
677
681
gitbase .RepositoriesTableName ,
678
682
gitbase .RemotesTableName ,
679
683
),
@@ -707,6 +711,7 @@ func TestBuildSquashedTable(t *testing.T) {
707
711
remoteRefsFilter ,
708
712
refFilter ,
709
713
},
714
+ nil ,
710
715
gitbase .RemotesTableName ,
711
716
gitbase .ReferencesTableName ,
712
717
),
@@ -739,6 +744,7 @@ func TestBuildSquashedTable(t *testing.T) {
739
744
repoRefsFilter ,
740
745
repoRefsRedundantFilter ,
741
746
},
747
+ nil ,
742
748
gitbase .RepositoriesTableName ,
743
749
gitbase .ReferencesTableName ,
744
750
),
@@ -774,6 +780,7 @@ func TestBuildSquashedTable(t *testing.T) {
774
780
refsCommitsFilter ,
775
781
refCommitsRedundantFilter ,
776
782
},
783
+ nil ,
777
784
gitbase .ReferencesTableName ,
778
785
gitbase .CommitsTableName ,
779
786
),
@@ -822,6 +829,7 @@ func TestBuildSquashedTable(t *testing.T) {
822
829
commitTreeEntriesFilter ,
823
830
commitTreeEntriesRedundantFilter ,
824
831
},
832
+ nil ,
825
833
gitbase .CommitsTableName ,
826
834
gitbase .TreeEntriesTableName ,
827
835
),
@@ -861,6 +869,7 @@ func TestBuildSquashedTable(t *testing.T) {
861
869
refCommitTreesFilter ,
862
870
refCommitTreesRedundantFilter ,
863
871
},
872
+ nil ,
864
873
gitbase .ReferencesTableName ,
865
874
gitbase .CommitTreesTableName ,
866
875
),
@@ -904,6 +913,7 @@ func TestBuildSquashedTable(t *testing.T) {
904
913
treeEntryBlobsRedundantFilter ,
905
914
treeEntryBlobsFilter ,
906
915
},
916
+ nil ,
907
917
gitbase .TreeEntriesTableName ,
908
918
gitbase .BlobsTableName ,
909
919
),
@@ -962,6 +972,7 @@ func TestBuildSquashedTable(t *testing.T) {
962
972
repoCommitsFilter ,
963
973
repoCommitsRedundantFilter ,
964
974
},
975
+ nil ,
965
976
gitbase .RepositoriesTableName ,
966
977
gitbase .CommitsTableName ,
967
978
),
@@ -996,6 +1007,7 @@ func TestBuildSquashedTable(t *testing.T) {
996
1007
refsRefCommitsFilter ,
997
1008
refsRefCommitsRedundantFilter ,
998
1009
},
1010
+ nil ,
999
1011
gitbase .ReferencesTableName ,
1000
1012
gitbase .RefCommitsTableName ,
1001
1013
),
@@ -1030,6 +1042,7 @@ func TestBuildSquashedTable(t *testing.T) {
1030
1042
refsRefCommitsFilter ,
1031
1043
refsRefCommitsHeadRedundantFilter ,
1032
1044
},
1045
+ nil ,
1033
1046
gitbase .ReferencesTableName ,
1034
1047
gitbase .RefCommitsTableName ,
1035
1048
),
@@ -1064,6 +1077,7 @@ func TestBuildSquashedTable(t *testing.T) {
1064
1077
refCommitsCommitsFilter ,
1065
1078
refCommitsCommitsRedundantFilter ,
1066
1079
},
1080
+ nil ,
1067
1081
gitbase .RefCommitsTableName ,
1068
1082
gitbase .CommitsTableName ,
1069
1083
),
@@ -1095,6 +1109,7 @@ func TestBuildSquashedTable(t *testing.T) {
1095
1109
repoTreeEntriesFilter ,
1096
1110
repoTreeEntriesRedundantFilter ,
1097
1111
},
1112
+ nil ,
1098
1113
gitbase .RepositoriesTableName ,
1099
1114
gitbase .TreeEntriesTableName ,
1100
1115
),
@@ -1131,6 +1146,7 @@ func TestBuildSquashedTable(t *testing.T) {
1131
1146
repoRefCommitsFilter ,
1132
1147
repoRefCommitsRedundantFilter ,
1133
1148
},
1149
+ nil ,
1134
1150
gitbase .RepositoriesTableName ,
1135
1151
gitbase .RefCommitsTableName ,
1136
1152
),
@@ -1165,6 +1181,7 @@ func TestBuildSquashedTable(t *testing.T) {
1165
1181
repoBlobsFilter ,
1166
1182
repoBlobsRedundantFilter ,
1167
1183
},
1184
+ nil ,
1168
1185
gitbase .RepositoriesTableName ,
1169
1186
gitbase .BlobsTableName ,
1170
1187
),
@@ -1211,6 +1228,7 @@ func TestBuildSquashedTable(t *testing.T) {
1211
1228
refCommitsCommitsFilter ,
1212
1229
refCommitsCommitsRedundantFilter ,
1213
1230
},
1231
+ nil ,
1214
1232
gitbase .ReferencesTableName ,
1215
1233
gitbase .RefCommitsTableName ,
1216
1234
gitbase .CommitsTableName ,
@@ -1258,6 +1276,7 @@ func TestBuildSquashedTable(t *testing.T) {
1258
1276
refCommitsCommitsFilter ,
1259
1277
refCommitsCommitsRedundantFilter ,
1260
1278
},
1279
+ nil ,
1261
1280
gitbase .ReferencesTableName ,
1262
1281
gitbase .RefCommitsTableName ,
1263
1282
gitbase .CommitsTableName ,
@@ -1293,6 +1312,7 @@ func TestBuildSquashedTable(t *testing.T) {
1293
1312
commitTreeTreeEntriesFilter ,
1294
1313
commitTreeTreeEntriesRedundantFilter ,
1295
1314
},
1315
+ nil ,
1296
1316
gitbase .CommitTreesTableName ,
1297
1317
gitbase .TreeEntriesTableName ,
1298
1318
),
@@ -1328,6 +1348,7 @@ func TestBuildSquashedTable(t *testing.T) {
1328
1348
commitCommitTreesFilter ,
1329
1349
commitCommitTreesRedundantFilter ,
1330
1350
},
1351
+ nil ,
1331
1352
gitbase .CommitsTableName ,
1332
1353
gitbase .CommitTreesTableName ,
1333
1354
),
@@ -1363,6 +1384,7 @@ func TestBuildSquashedTable(t *testing.T) {
1363
1384
commitCommitTreesFilter ,
1364
1385
commitCommitTreesByTreeRedundantFilter ,
1365
1386
},
1387
+ nil ,
1366
1388
gitbase .CommitsTableName ,
1367
1389
gitbase .CommitTreesTableName ,
1368
1390
),
@@ -1397,6 +1419,7 @@ func TestBuildSquashedTable(t *testing.T) {
1397
1419
refCommitCommitTreesFilter ,
1398
1420
refCommitCommitTreesRedundantFilter ,
1399
1421
},
1422
+ nil ,
1400
1423
gitbase .RefCommitsTableName ,
1401
1424
gitbase .CommitTreesTableName ,
1402
1425
),
@@ -1435,6 +1458,7 @@ func TestBuildSquashedTable(t *testing.T) {
1435
1458
refCommitBlobsFilter ,
1436
1459
refCommitBlobsRedundantFilter ,
1437
1460
},
1461
+ nil ,
1438
1462
gitbase .ReferencesTableName ,
1439
1463
gitbase .CommitBlobsTableName ,
1440
1464
),
@@ -1468,6 +1492,7 @@ func TestBuildSquashedTable(t *testing.T) {
1468
1492
refCommitCommitBlobsFilter ,
1469
1493
refCommitCommitBlobsRedundantFilter ,
1470
1494
},
1495
+ nil ,
1471
1496
gitbase .RefCommitsTableName ,
1472
1497
gitbase .CommitBlobsTableName ,
1473
1498
),
@@ -1502,6 +1527,7 @@ func TestBuildSquashedTable(t *testing.T) {
1502
1527
commitCommitBlobsFilter ,
1503
1528
commitCommitBlobsRedundantFilter ,
1504
1529
},
1530
+ nil ,
1505
1531
gitbase .CommitsTableName ,
1506
1532
gitbase .CommitBlobsTableName ,
1507
1533
),
@@ -1536,10 +1562,37 @@ func TestBuildSquashedTable(t *testing.T) {
1536
1562
commitBlobBlobsFilter ,
1537
1563
commitBlobBlobsRedundantFilter ,
1538
1564
},
1565
+ nil ,
1539
1566
gitbase .CommitBlobsTableName ,
1540
1567
gitbase .BlobsTableName ,
1541
1568
),
1542
1569
},
1570
+ {
1571
+ "refs with indexes" ,
1572
+ []sql.Table {refs , refCommits },
1573
+ []sql.Expression {
1574
+ refsRefCommitsRedundantFilter ,
1575
+ },
1576
+ nil ,
1577
+ map [string ]sql.IndexLookup {
1578
+ gitbase .ReferencesTableName : idx1 ,
1579
+ gitbase .RefCommitsTableName : idx2 ,
1580
+ },
1581
+ nil ,
1582
+ newSquashedTable (
1583
+ gitbase .NewRefRefCommitsIter (
1584
+ gitbase .NewIndexRefsIter (nil , idx1 ),
1585
+ nil ,
1586
+ ),
1587
+ nil ,
1588
+ []sql.Expression {
1589
+ refsRefCommitsRedundantFilter ,
1590
+ },
1591
+ []string {gitbase .ReferencesTableName },
1592
+ gitbase .ReferencesTableName ,
1593
+ gitbase .RefCommitsTableName ,
1594
+ ),
1595
+ },
1543
1596
{
1544
1597
"ref commits with indexes" ,
1545
1598
[]sql.Table {refCommits , commits },
@@ -1561,6 +1614,7 @@ func TestBuildSquashedTable(t *testing.T) {
1561
1614
[]sql.Expression {
1562
1615
refCommitsCommitsRedundantFilter ,
1563
1616
},
1617
+ []string {gitbase .RefCommitsTableName },
1564
1618
gitbase .RefCommitsTableName ,
1565
1619
gitbase .CommitsTableName ,
1566
1620
),
@@ -1587,6 +1641,7 @@ func TestBuildSquashedTable(t *testing.T) {
1587
1641
[]sql.Expression {
1588
1642
commitCommitTreesRedundantFilter ,
1589
1643
},
1644
+ []string {gitbase .CommitsTableName },
1590
1645
gitbase .CommitsTableName ,
1591
1646
gitbase .CommitTreesTableName ,
1592
1647
),
@@ -1613,6 +1668,7 @@ func TestBuildSquashedTable(t *testing.T) {
1613
1668
[]sql.Expression {
1614
1669
commitTreeTreeEntriesRedundantFilter ,
1615
1670
},
1671
+ []string {gitbase .CommitTreesTableName },
1616
1672
gitbase .CommitTreesTableName ,
1617
1673
gitbase .TreeEntriesTableName ,
1618
1674
),
@@ -1639,6 +1695,7 @@ func TestBuildSquashedTable(t *testing.T) {
1639
1695
[]sql.Expression {
1640
1696
commitBlobBlobsRedundantFilter ,
1641
1697
},
1698
+ []string {gitbase .CommitBlobsTableName },
1642
1699
gitbase .CommitBlobsTableName ,
1643
1700
gitbase .BlobsTableName ,
1644
1701
),
@@ -1665,6 +1722,7 @@ func TestBuildSquashedTable(t *testing.T) {
1665
1722
[]sql.Expression {
1666
1723
treeEntryBlobsRedundantFilter ,
1667
1724
},
1725
+ []string {gitbase .TreeEntriesTableName },
1668
1726
gitbase .TreeEntriesTableName ,
1669
1727
gitbase .BlobsTableName ,
1670
1728
),
@@ -1699,6 +1757,7 @@ func TestBuildSquashedTable(t *testing.T) {
1699
1757
refsCommitFilesFilter ,
1700
1758
refsCommitFilesRedundantFilter ,
1701
1759
},
1760
+ nil ,
1702
1761
gitbase .ReferencesTableName ,
1703
1762
gitbase .CommitFilesTableName ,
1704
1763
),
@@ -1733,6 +1792,7 @@ func TestBuildSquashedTable(t *testing.T) {
1733
1792
commitsCommitFilesFilter ,
1734
1793
commitsCommitFilesRedundantFilter ,
1735
1794
},
1795
+ nil ,
1736
1796
gitbase .CommitsTableName ,
1737
1797
gitbase .CommitFilesTableName ,
1738
1798
),
@@ -1771,6 +1831,7 @@ func TestBuildSquashedTable(t *testing.T) {
1771
1831
commitFilesFilesTreeHashRedundantFilter ,
1772
1832
commitFilesFilesBlobHashRedundantFilter ,
1773
1833
},
1834
+ nil ,
1774
1835
gitbase .CommitFilesTableName ,
1775
1836
gitbase .FilesTableName ,
1776
1837
),
@@ -1801,6 +1862,7 @@ func TestBuildSquashedTable(t *testing.T) {
1801
1862
commitFilesFilesTreeHashRedundantFilter ,
1802
1863
commitFilesFilesFilePathRedundantFilter ,
1803
1864
},
1865
+ []string {gitbase .CommitFilesTableName },
1804
1866
gitbase .CommitFilesTableName ,
1805
1867
gitbase .FilesTableName ,
1806
1868
),
0 commit comments