Skip to content

Commit 87b83be

Browse files
author
rstam
committed
Minor changes for 1.7.
1 parent d8fede5 commit 87b83be

File tree

3 files changed

+22
-15
lines changed

3 files changed

+22
-15
lines changed

Bson/Serialization/BsonClassMap.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ public static Type GetMemberInfoType(MemberInfo memberInfo)
265265
}
266266

267267
/// <summary>
268-
/// Returns all registered class maps.
268+
/// Gets all registered class maps.
269269
/// </summary>
270270
public static IEnumerable<BsonClassMap> GetRegisteredClassMaps()
271271
{

BsonUnitTests/DefaultSerializer/BsonClassMapTests.cs

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,8 @@ public void TestIsClassMapRegistered()
312312
[TestFixture]
313313
public class BsonClassMapGetRegisteredClassMapTests
314314
{
315+
private static bool __firstTime = true;
316+
315317
public class C
316318
{
317319
public ObjectId Id;
@@ -327,17 +329,22 @@ public class D
327329
[Test]
328330
public void TestGetRegisteredClassMaps()
329331
{
330-
Assert.IsFalse(BsonClassMap.IsClassMapRegistered(typeof(C)));
331-
Assert.IsFalse(BsonClassMap.IsClassMapRegistered(typeof(D)));
332-
BsonClassMap.RegisterClassMap<C>(cm => cm.AutoMap());
333-
BsonClassMap.RegisterClassMap<D>(cm => cm.AutoMap());
334-
335-
var classMaps = BsonClassMap.GetRegisteredClassMaps();
336-
var classMapTypes = classMaps.Select(x => x.ClassType).ToList();
337-
338-
Assert.IsTrue(BsonClassMap.IsClassMapRegistered(typeof(C)));
339-
Assert.Contains(typeof(C), classMapTypes);
340-
Assert.Contains(typeof(D), classMapTypes);
332+
// this unit test can only be run once (per process)
333+
if (__firstTime)
334+
{
335+
Assert.IsFalse(BsonClassMap.IsClassMapRegistered(typeof(C)));
336+
Assert.IsFalse(BsonClassMap.IsClassMapRegistered(typeof(D)));
337+
BsonClassMap.RegisterClassMap<C>(cm => cm.AutoMap());
338+
BsonClassMap.RegisterClassMap<D>(cm => cm.AutoMap());
339+
340+
var classMaps = BsonClassMap.GetRegisteredClassMaps();
341+
var classMapTypes = classMaps.Select(x => x.ClassType).ToList();
342+
343+
Assert.IsTrue(BsonClassMap.IsClassMapRegistered(typeof(C)));
344+
Assert.Contains(typeof(C), classMapTypes);
345+
Assert.Contains(typeof(D), classMapTypes);
346+
__firstTime = false;
347+
}
341348
}
342349
}
343350

Driver/Core/WriteConcern.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -290,9 +290,6 @@ public WriteConcern Freeze()
290290
{
291291
if (!_isFrozen)
292292
{
293-
_frozenHashCode = GetHashCode();
294-
_isFrozen = true;
295-
296293
if (_fsync.HasValue || _journal.HasValue)
297294
{
298295
if (_w != null && _w is WCount && ((WCount)_w).Value == 0)
@@ -306,6 +303,9 @@ public WriteConcern Freeze()
306303
{
307304
throw new MongoException("WTimeout may not be set unless W is set also.");
308305
}
306+
307+
_frozenHashCode = GetHashCode();
308+
_isFrozen = true;
309309
}
310310
return this;
311311
}

0 commit comments

Comments
 (0)