Skip to content

Commit fa00f17

Browse files
authored
Merge pull request #2632 from JKamsker/feat/composite-sorting
Feat/composite sorting
2 parents d8f41da + 26bc3da commit fa00f17

File tree

19 files changed

+824
-78
lines changed

19 files changed

+824
-78
lines changed

LiteDB.Tests/Engine/Collation_Tests.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,10 @@ public void Culture_Ordinal_Sort()
3333
e.Insert("col1", names.Select(x => new BsonDocument { ["name"] = x }), BsonAutoId.Int32);
3434

3535
// sort by merge sort
36-
var sortByOrderByName = e.Query("col1", new Query { OrderBy = "name" })
36+
var orderQuery = new Query();
37+
orderQuery.OrderBy.Add(new QueryOrder("name", Query.Ascending));
38+
39+
var sortByOrderByName = e.Query("col1", orderQuery)
3740
.ToEnumerable()
3841
.Select(x => x["name"].AsString)
3942
.ToArray();
@@ -53,8 +56,11 @@ public void Culture_Ordinal_Sort()
5356
// index test
5457
e.EnsureIndex("col1", "idx_name", "name", false);
5558

59+
var indexOrderQuery = new Query();
60+
indexOrderQuery.OrderBy.Add(new QueryOrder("name", Query.Ascending));
61+
5662
// sort by index
57-
var sortByIndexName = e.Query("col1", new Query { OrderBy = "name" })
63+
var sortByIndexName = e.Query("col1", indexOrderQuery)
5864
.ToEnumerable()
5965
.Select(x => x["name"].AsString)
6066
.ToArray();

LiteDB.Tests/Internals/Sort_Tests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using System;
1+
using System;
22
using System.IO;
33
using System.Linq;
44
using System.Collections.Generic;
@@ -24,7 +24,7 @@ public void Sort_String_Asc()
2424
pragmas.Set(Pragmas.COLLATION, Collation.Binary.ToString(), false);
2525

2626
using (var tempDisk = new SortDisk(_factory, 10 * 8192, pragmas))
27-
using (var s = new SortService(tempDisk, Query.Ascending, pragmas))
27+
using (var s = new SortService(tempDisk, new[] { Query.Ascending }, pragmas))
2828
{
2929
s.Insert(source);
3030

@@ -52,7 +52,7 @@ public void Sort_Int_Desc()
5252
pragmas.Set(Pragmas.COLLATION, Collation.Binary.ToString(), false);
5353

5454
using (var tempDisk = new SortDisk(_factory, 8192, pragmas))
55-
using (var s = new SortService(tempDisk, Query.Descending, pragmas))
55+
using (var s = new SortService(tempDisk, [Query.Descending], pragmas))
5656
{
5757
s.Insert(source);
5858

0 commit comments

Comments
 (0)