Skip to content

Commit 4f13af5

Browse files
committed
NH-3025 - Add tests
1 parent 698b567 commit 4f13af5

File tree

2 files changed

+29
-8
lines changed

2 files changed

+29
-8
lines changed

src/NHibernate.Test/Linq/ByMethod/GroupByHavingTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ where g.Count() > 4
9191
Assert.That(list.Single().Count, Is.EqualTo(5));
9292
}
9393

94-
[Test, Description("I suspect that this case isn't executed correctly - the sql doesn't mention the orderlines. /Oskar 2012-01-22")]
94+
[Test, KnownBug("NH-????"), Description("I suspect that this case isn't executed correctly - the sql doesn't mention the orderlines. /Oskar 2012-01-22")]
9595
public void HavingCountSelectTupleKeyCountOfOrderLines()
9696
{
9797
var list = (from o in db.Orders
@@ -105,7 +105,7 @@ where g.Count() > 4
105105
}).ToList();
106106

107107
Assert.That(list.Count, Is.EqualTo(1));
108-
Assert.That(list.Single().Count, Is.EqualTo(5));
108+
Assert.That(list.Single().Count, Is.EqualTo(14));
109109
}
110110

111111
[Test]

src/NHibernate.Test/Linq/ByMethod/GroupByTests.cs

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -143,12 +143,9 @@ public void SingleKeyPropertyGroupAndOrderByCountBeforeProjection()
143143
AssertOrderedBy.Descending(orderCounts, oc => oc.OrderCount);
144144
}
145145

146-
[Test]
147-
[Ignore("Generates incorrect SQL. Reported as NH-3027.")]
146+
[Test, KnownBug("NH-3027")]
148147
public void SingleKeyPropertyGroupByEntityAndSelectEntity()
149148
{
150-
// NH-3027
151-
152149
var orderCounts = db.Orders
153150
.GroupBy(o => o.Customer)
154151
.Select(g => new { Customer = g.Key, OrderCount = g.Count() })
@@ -224,6 +221,31 @@ public void GroupByWithContainsInWhereClause()
224221
Assert.That(result.Count, Is.EqualTo(62));
225222
}
226223

224+
[Test, KnownBug("NH-3025")]
225+
public void SelectTupleKeyCountOfOrderLines()
226+
{
227+
var list = (from o in db.Orders.ToList()
228+
group o by o.OrderDate
229+
into g
230+
select new
231+
{
232+
g.Key,
233+
Count = g.SelectMany(x => x.OrderLines).Count()
234+
}).ToList();
235+
236+
var query = (from o in db.Orders
237+
group o by o.OrderDate
238+
into g
239+
select new
240+
{
241+
g.Key,
242+
Count = g.SelectMany(x => x.OrderLines).Count()
243+
}).ToList();
244+
245+
Assert.That(query.Count, Is.EqualTo(481));
246+
Assert.That(query, Is.EquivalentTo(list));
247+
}
248+
227249
[Test]
228250
public void GroupByTwoFieldsWhereOneOfThemIsTooDeep()
229251
{
@@ -265,8 +287,7 @@ into g
265287
Assert.That(results.Count, Is.EqualTo(10));
266288
}
267289

268-
[Test]
269-
[Ignore("Generates incorrect expression.")]
290+
[Test, KnownBug("NH-????")]
270291
public void GroupByAndAll()
271292
{
272293
//NH-2566

0 commit comments

Comments
 (0)