public void ObjectRetrievedFromFirstLevelCacheShouldNotBeClonedIfTheyAreFromASpecificNameSpace() { var namespaceCloningProvider = new NamespacesBasedCloningProvider(new [] { "System" }); var cache = new SquirrelCache(_config, namespaceCloningProvider, _serializationProvider); var testObject2 = EqualityComparer <string> .Default; var serializedTestObject2 = KrakenSerializer.Serialize(testObject2); var key1 = RandomKey(); var key2 = RandomKey(); cache.Set(key1, _serializedTestObject); cache.Set(key2, serializedTestObject2); var obj1_1 = cache.Get <object>(key1).Value; var obj1_2 = cache.Get <object>(key1).Value; Assert.NotNull(obj1_1); Assert.True(ReferenceEquals(obj1_1, obj1_2)); var obj2_1 = cache.Get <object>(key2).Value; var obj2_2 = cache.Get <object>(key2).Value; Assert.NotNull(obj2_1); Assert.False(ReferenceEquals(obj2_1, obj2_2)); }
public void NamespacesBasedCloningProviderShouldReturnFalseForNullObjects() { var namespaceCloningProvider = new NamespacesBasedCloningProvider(new [] { "DesertOctopus.MammothCache.Tests" }); Assert.False(namespaceCloningProvider.RequireCloning(null)); }