public void TestSingleClientPrimaryDown() { var n1 = GetNode(1); var n2 = GetNode(2); var n3 = GetNode(3); var n4 = GetNode(4); var newClient = new MockMemcachedClient(new List<IMemcachedNode> { n1, n2, n3, n4 }); cache.ResetMemcachedClient(newClient, null); cache.Store(N1Key, new SessionData(SessionStateActions.None, 23), TimeSpan.FromMinutes(30)); newClient.SetNodeDead(n1, new List<IMemcachedNode> { n2, n3, n4 }); var data = cache.Get(N1Key); Assert.AreEqual(23, data.Timeout); }
public void TestTwoClientsPrimaryDown() { var n1 = GetNode(1); var n2 = GetNode(2); var n3 = GetNode(3); var n4 = GetNode(4); var s1 = new SessionNodeLocatorImpl(); s1.Initialize(new List<IMemcachedNode> { n1, n2, n3, n4 }); var newClient = new MockMemcachedClient(new List<IMemcachedNode> { n1, n2, n3, n4 }); cache.ResetMemcachedClient(newClient, s1); cache.Store(N1Key, new SessionData(SessionStateActions.None, 23), TimeSpan.FromMinutes(30)); newClient.SetNodeDead(n1, new List<IMemcachedNode> { n2, n3, n4 }); cache.Store(N1Key, new SessionData(SessionStateActions.None, 25), TimeSpan.FromMinutes(30)); var s2 = new SessionNodeLocatorImpl(); s2.Initialize(new List<IMemcachedNode> { n1, n2, n3, n4 }); cache.ResetMemcachedClient(newClient, s2); newClient.SetNodeDead(n1, new List<IMemcachedNode> { n2, n3, n4 }); var data = cache.Get(N1Key); Assert.AreEqual(25, data.Timeout); }