Skip to content

Commit 63dc8cd

Browse files
committed
Adjust tests to ensure generated async tests pass
1 parent 9607294 commit 63dc8cd

File tree

2 files changed

+40
-73
lines changed

2 files changed

+40
-73
lines changed

src/NHibernate.Test/Async/SecondLevelCacheTest/InvalidationTests.cs

Lines changed: 20 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -31,35 +31,30 @@ public class InvalidationTestsAsync : TestCase
3131

3232
protected override void Configure(Configuration configuration)
3333
{
34-
base.Configure(configuration);
35-
configuration.Properties[Environment.CacheProvider] = typeof(HashtableCacheProvider).AssemblyQualifiedName;
36-
configuration.Properties[Environment.UseQueryCache] = "true";
34+
configuration.SetProperty(Environment.CacheProvider, typeof(HashtableCacheProvider).AssemblyQualifiedName);
35+
configuration.SetProperty(Environment.UseQueryCache, "true");
3736
}
3837

3938
[Test]
4039
public async Task InvalidatesEntitiesAsync()
4140
{
41+
var debugSessionFactory = (DebugSessionFactory) Sfi;
42+
var sessionFactoryImpl = (SessionFactoryImpl) debugSessionFactory.ActualFactory;
43+
4244
var cache = Substitute.For<UpdateTimestampsCache>(Sfi.Settings, new Dictionary<string, string>());
43-
((SessionFactoryImpl) (Sfi as DebugSessionFactory).ActualFactory).SetPropertyUsingReflection(
44-
x => x.UpdateTimestampsCache,
45-
cache);
45+
sessionFactoryImpl.SetPropertyUsingReflection(x => x.UpdateTimestampsCache, cache);
4646

4747
//"Received" assertions can not be used since the collection is reused and cleared between calls.
4848
//The received args are cloned and stored
4949
var preInvalidations = new List<IReadOnlyCollection<string>>();
5050
var invalidations = new List<IReadOnlyCollection<string>>();
5151

52-
await cache.PreInvalidateAsync(
53-
Arg.Do<IReadOnlyCollection<string>>(x => preInvalidations.Add(x.ToList())),
54-
CancellationToken.None);
55-
56-
await cache.InvalidateAsync(
57-
Arg.Do<IReadOnlyCollection<string>>(x => invalidations.Add(x.ToList())),
58-
CancellationToken.None);
52+
await (cache.PreInvalidateAsync(Arg.Do<IReadOnlyCollection<string>>(x => preInvalidations.Add(x.ToList())), CancellationToken.None));
53+
await (cache.InvalidateAsync(Arg.Do<IReadOnlyCollection<string>>(x => invalidations.Add(x.ToList())), CancellationToken.None));
5954

60-
using (ISession session = OpenSession())
55+
using (var session = OpenSession())
6156
{
62-
using (ITransaction tx = session.BeginTransaction())
57+
using (var tx = session.BeginTransaction())
6358
{
6459
foreach (var i in Enumerable.Range(1, 10))
6560
{
@@ -70,7 +65,7 @@ await cache.InvalidateAsync(
7065
await (tx.CommitAsync());
7166
}
7267

73-
using (ITransaction tx = session.BeginTransaction())
68+
using (var tx = session.BeginTransaction())
7469
{
7570
foreach (var i in Enumerable.Range(1, 10))
7671
{
@@ -81,7 +76,7 @@ await cache.InvalidateAsync(
8176
await (tx.CommitAsync());
8277
}
8378

84-
using (ITransaction tx = session.BeginTransaction())
79+
using (var tx = session.BeginTransaction())
8580
{
8681
foreach (var i in Enumerable.Range(1, 10))
8782
{
@@ -94,38 +89,21 @@ await cache.InvalidateAsync(
9489
}
9590

9691
//Should receive one preinvalidation and one invalidation per commit
97-
Assert.That(preInvalidations.Count,Is.EqualTo(3));
98-
Assert.That(preInvalidations.All(x => x.Count == 1 && x.First() == "Item"), Is.True);
92+
Assert.That(preInvalidations, Has.Count.EqualTo(3));
93+
Assert.That(preInvalidations, Has.All.Count.EqualTo(1).And.Contains("Item"));
9994

100-
Assert.That(invalidations.Count, Is.EqualTo(3));
101-
Assert.That(invalidations.All(x => x.Count == 1 && x.First() == "Item"), Is.True);
102-
103-
}
104-
105-
public async Task CleanUpAsync(CancellationToken cancellationToken = default(CancellationToken))
106-
{
107-
using (ISession s = OpenSession())
108-
using (ITransaction tx = s.BeginTransaction())
109-
{
110-
await (s.DeleteAsync("from Item", cancellationToken));
111-
await (tx.CommitAsync(cancellationToken));
112-
}
95+
Assert.That(invalidations, Has.Count.EqualTo(3));
96+
Assert.That(invalidations, Has.All.Count.EqualTo(1).And.Contains("Item"));
11397
}
114-
115-
public void CleanUp()
98+
99+
protected override void OnTearDown()
116100
{
117-
using (ISession s = OpenSession())
118-
using (ITransaction tx = s.BeginTransaction())
101+
using (var s = OpenSession())
102+
using (var tx = s.BeginTransaction())
119103
{
120104
s.Delete("from Item");
121105
tx.Commit();
122106
}
123107
}
124-
125-
protected override void OnTearDown()
126-
{
127-
CleanUp();
128-
base.OnTearDown();
129-
}
130108
}
131109
}

src/NHibernate.Test/SecondLevelCacheTest/InvalidationTests.cs

Lines changed: 20 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -19,34 +19,30 @@ public class InvalidationTests : TestCase
1919

2020
protected override void Configure(Configuration configuration)
2121
{
22-
base.Configure(configuration);
23-
configuration.Properties[Environment.CacheProvider] = typeof(HashtableCacheProvider).AssemblyQualifiedName;
24-
configuration.Properties[Environment.UseQueryCache] = "true";
22+
configuration.SetProperty(Environment.CacheProvider, typeof(HashtableCacheProvider).AssemblyQualifiedName);
23+
configuration.SetProperty(Environment.UseQueryCache, "true");
2524
}
2625

2726
[Test]
2827
public void InvalidatesEntities()
2928
{
29+
var debugSessionFactory = (DebugSessionFactory) Sfi;
30+
var sessionFactoryImpl = (SessionFactoryImpl) debugSessionFactory.ActualFactory;
31+
3032
var cache = Substitute.For<UpdateTimestampsCache>(Sfi.Settings, new Dictionary<string, string>());
31-
((SessionFactoryImpl) (Sfi as DebugSessionFactory).ActualFactory).SetPropertyUsingReflection(
32-
x => x.UpdateTimestampsCache,
33-
cache);
33+
sessionFactoryImpl.SetPropertyUsingReflection(x => x.UpdateTimestampsCache, cache);
3434

3535
//"Received" assertions can not be used since the collection is reused and cleared between calls.
3636
//The received args are cloned and stored
3737
var preInvalidations = new List<IReadOnlyCollection<string>>();
3838
var invalidations = new List<IReadOnlyCollection<string>>();
3939

40-
cache
41-
.When(x=>x.PreInvalidate(Arg.Any<IReadOnlyCollection<string>>()))
42-
.Do(x=>preInvalidations.Add(((IReadOnlyCollection<string>) x[0]).ToList()));
43-
cache
44-
.When(x => x.Invalidate(Arg.Any<IReadOnlyCollection<string>>()))
45-
.Do(x => invalidations.Add(((IReadOnlyCollection<string>) x[0]).ToList()));
40+
cache.PreInvalidate(Arg.Do<IReadOnlyCollection<string>>(x => preInvalidations.Add(x.ToList())));
41+
cache.Invalidate(Arg.Do<IReadOnlyCollection<string>>(x => invalidations.Add(x.ToList())));
4642

47-
using (ISession session = OpenSession())
43+
using (var session = OpenSession())
4844
{
49-
using (ITransaction tx = session.BeginTransaction())
45+
using (var tx = session.BeginTransaction())
5046
{
5147
foreach (var i in Enumerable.Range(1, 10))
5248
{
@@ -57,7 +53,7 @@ public void InvalidatesEntities()
5753
tx.Commit();
5854
}
5955

60-
using (ITransaction tx = session.BeginTransaction())
56+
using (var tx = session.BeginTransaction())
6157
{
6258
foreach (var i in Enumerable.Range(1, 10))
6359
{
@@ -68,7 +64,7 @@ public void InvalidatesEntities()
6864
tx.Commit();
6965
}
7066

71-
using (ITransaction tx = session.BeginTransaction())
67+
using (var tx = session.BeginTransaction())
7268
{
7369
foreach (var i in Enumerable.Range(1, 10))
7470
{
@@ -81,28 +77,21 @@ public void InvalidatesEntities()
8177
}
8278

8379
//Should receive one preinvalidation and one invalidation per commit
84-
Assert.That(preInvalidations.Count,Is.EqualTo(3));
85-
Assert.That(preInvalidations.All(x => x.Count == 1 && x.First() == "Item"), Is.True);
86-
87-
Assert.That(invalidations.Count, Is.EqualTo(3));
88-
Assert.That(invalidations.All(x => x.Count == 1 && x.First() == "Item"), Is.True);
80+
Assert.That(preInvalidations, Has.Count.EqualTo(3));
81+
Assert.That(preInvalidations, Has.All.Count.EqualTo(1).And.Contains("Item"));
8982

83+
Assert.That(invalidations, Has.Count.EqualTo(3));
84+
Assert.That(invalidations, Has.All.Count.EqualTo(1).And.Contains("Item"));
9085
}
91-
92-
public void CleanUp()
86+
87+
protected override void OnTearDown()
9388
{
94-
using (ISession s = OpenSession())
95-
using (ITransaction tx = s.BeginTransaction())
89+
using (var s = OpenSession())
90+
using (var tx = s.BeginTransaction())
9691
{
9792
s.Delete("from Item");
9893
tx.Commit();
9994
}
10095
}
101-
102-
protected override void OnTearDown()
103-
{
104-
CleanUp();
105-
base.OnTearDown();
106-
}
10796
}
10897
}

0 commit comments

Comments
 (0)