public void OneTimeSetUp() { var json = ResourceHelper.ReadResource(@"Data\Configuration\nodesext-cb-beta-4.json"); var config = JsonConvert.DeserializeObject<BucketConfig>(json); var node = config.GetNodes().First(); _endPoint = UriExtensions.GetEndPoint(_address); var configuration = new ClientConfiguration(); var connectionPool = new FakeConnectionPool(); var ioService = new FakeIOService(_endPoint, connectionPool, false); _server = new Server(ioService, node, configuration, config, new FakeTranscoder()); }
public void TestFixtureSetup() { var json = File.ReadAllText(@"Data\\Configuration\\nodesext-cb-beta-4.json"); var config = JsonConvert.DeserializeObject<BucketConfig>(json); var node = config.GetNodes().First(); _endPoint = UriExtensions.GetEndPoint(_address); var configuration = new ClientConfiguration(); var connectionPool = new FakeConnectionPool(); var ioStrategy = new FakeIOStrategy(_endPoint, connectionPool, false); _server = new Server(ioStrategy, node, configuration, config, new FakeTranscoder()); }
public void When_IOErrorThreshold_IsNot_Met_By_IOErrorInterval_NodeUnavailableException_Is_Thrown() { var json = File.ReadAllText(@"Data\\Configuration\\nodesext-cb-beta-4.json"); var config = JsonConvert.DeserializeObject<BucketConfig>(json); var node = config.GetNodes().First(); var endPoint = UriExtensions.GetEndPoint(_address); var configuration = new ClientConfiguration { IOErrorThreshold = 10, IOErrorCheckInterval = 100 }; var connectionPool = new FakeConnectionPool(); var ioStrategy = new FakeIOStrategy(endPoint, connectionPool, false); var server = new Server(ioStrategy, node, configuration, config, new FakeTranscoder()); Assert.IsFalse(server.IsDown); var stopWatch = new Stopwatch(); stopWatch.Start(); for (int i = 0; i < 11; i++) { server.CheckOnline(true); Console.WriteLine("{0}=>{1}", server.IsDown, server.IOErrorCount); Thread.Sleep(10); } // ReSharper disable once ThrowingSystemException Assert.Throws<NodeUnavailableException>(() => { var operation = new FakeOperation(new DefaultTranscoder()); server.Send(operation); throw operation.Exception; }); }
public void When_IOErrorThreshold_IsNot_Met_Within_IOErrorInterval_IsDead_Returns_False() { var json = File.ReadAllText(@"Data\\Configuration\\nodesext-cb-beta-4.json"); var config = JsonConvert.DeserializeObject<BucketConfig>(json); var node = config.GetNodes().First(); var endPoint = UriExtensions.GetEndPoint(_address); var configuration = new ClientConfiguration { IOErrorThreshold = 10, IOErrorCheckInterval = 10 }; var connectionPool = new FakeConnectionPool(); var ioStrategy = new FakeIOStrategy(endPoint, connectionPool, false); var server = new Server(ioStrategy, node, configuration, config, new FakeTranscoder()); Assert.IsFalse(server.IsDown); var stopWatch = new Stopwatch(); stopWatch.Start(); for (int i = 0; i < 11; i++) { server.CheckOnline(true); Console.WriteLine("{0}=>{1}", server.IsDown, server.IOErrorCount); } Console.WriteLine("Time elapsed {0}", stopWatch.ElapsedMilliseconds); stopWatch.Restart(); Assert.IsFalse(server.IsDown); Assert.AreEqual(0, server.IOErrorCount); }
public void When_IOErrorThreshold_Is_Met_By_IOErrorInterval_IsDead_Returns_True() { var json = ResourceHelper.ReadResource(@"Data\Configuration\nodesext-cb-beta-4.json"); var config = JsonConvert.DeserializeObject<BucketConfig>(json); var node = config.GetNodes().First(); var endPoint = UriExtensions.GetEndPoint(_address); var configuration = new ClientConfiguration { IOErrorThreshold = 10, IOErrorCheckInterval = 100 }; var connectionPool = new FakeConnectionPool(); var ioService = new FakeIOService(endPoint, connectionPool, false); var server = new Server(ioService, node, configuration, config, new FakeTranscoder()); Assert.IsFalse(server.IsDown); var stopWatch = new Stopwatch(); stopWatch.Start(); for (int i = 0; i < 11; i++) { server.CheckOnline(true); Console.WriteLine("{0}=>{1}", server.IsDown, server.IOErrorCount); Thread.Sleep(10); } Console.WriteLine(stopWatch.ElapsedMilliseconds); Assert.IsTrue(server.IsDown); Assert.AreEqual(0, server.IOErrorCount); }