public void AnnounceServer_WhenServerExists_UpdatesServer() { // GIVEN const string serverId = "server-001"; _elasticClient.Index(new Model.Server { Id = serverId }, descr => descr.Refresh(Refresh.True)).ThrowIfInvalid(); // WHEN var serverContext = new Server.ServerContext { Queues = new[] { "queue 1", "queue 2" }, WorkerCount = 32 }; _elasticConnection.AnnounceServer(serverId, serverContext); // THEN var serverResponse = _elasticClient.Get <Model.Server>(serverId).ThrowIfInvalid(); serverResponse.Found.Should().BeTrue(); var server = serverResponse.Source; server.Queues.ShouldBeEquivalentTo(serverContext.Queues); server.WorkerCount.Should().Be(serverContext.WorkerCount); }
public void AnnounceServer_Throws() { // GIVEN const string serverId = "server-001"; var serverContext = new Server.ServerContext { Queues = new[] { "queue 1", "queue 2" }, WorkerCount = 32 }; // WHEN THEN Assert.Throws <HangfireElasticSearchException>(() => _elasticConnection.AnnounceServer(serverId, serverContext)); }
public void RemoveServer() { UseConnections((redis, connection) => { var server = new Server.ServerContext(); server.Queues = new string[1] { "queue1" }; server.WorkerCount = 5; connection.AnnounceServer("1", server); connection.RemoveServer("1"); Assert.Equal(0, redis.SetLength(Prefix + "servers")); Assert.Equal(0, redis.ListLength(Prefix + "server:1:queues")); Assert.Equal(RedisValue.Null, redis.HashGet(Prefix + "server:1", "WorkerCount")); }); }
public void AnnounceServer() { UseConnections((redis, connection) => { var server = new Server.ServerContext(); server.Queues = new string[1] { "queue1" }; server.WorkerCount = 5; connection.AnnounceServer("1", server); Assert.Equal(1, redis.SetLength(Prefix + "servers")); Assert.Equal(1, redis.ListLength(Prefix + "server:1:queues")); Assert.Equal("5", redis.HashGet(Prefix + "server:1", "WorkerCount")); var pong = JobHelper.DeserializeDateTime(redis.HashGet(Prefix + "server:1", "StartedAt")); Assert.Equal(0, (int)(pong - DateTime.UtcNow).TotalSeconds); }); }
public void AnnounceServer() { UseConnections((redis, connection) => { var server = new Server.ServerContext(); server.Queues = new string[1] {"queue1"}; server.WorkerCount = 5; connection.AnnounceServer("1", server); Assert.Equal(1, redis.SetLength(Prefix + "servers")); Assert.Equal(1, redis.ListLength(Prefix + "server:1:queues")); Assert.Equal("5", redis.HashGet(Prefix + "server:1", "WorkerCount")); var pong = JobHelper.DeserializeDateTime(redis.HashGet(Prefix + "server:1", "StartedAt")); Assert.Equal(0, (int)(pong - DateTime.UtcNow).TotalSeconds); }); }