public void Register_AlreadyExistingRegistration_ReturnsAlreadyRegisteredApp() { var inMemoryProvider = new InMemoryRegistrationProvider(_inMemoryLoggerMock.Object, _configurationMock); inMemoryProvider.Register("ClientApp", "https://www.someclient.com"); Assert.IsNotNull(inMemoryProvider.Register("ClientApp", "https://www.someclient.com")); }
public void ResolveHost_ScallingSameAppInDistributor_ShouldReturnNextHost() { var inMemoryProvider = new InMemoryRegistrationProvider(_inMemoryLoggerMock.Object, _configurationMock); var discovery = new RoundRobinDistribution(inMemoryProvider, _discoveryLoggerMock.Object); var uid = inMemoryProvider.Register("ClientApp", "https://www.someclient.com"); var uid2 = inMemoryProvider.Register("ClientApp", "https://www.someclient2.com"); var host = discovery.ResolveHost(uid, "ClientApp"); var host2 = discovery.ResolveHost(uid2, "ClientApp"); Assert.AreEqual("https://www.someclient.com", host); Assert.AreEqual("https://www.someclient2.com", host2); }
public void HasRegistration_ApplicationIsRegistered_ReturnsTrue() { var inMemoryProvider = new InMemoryRegistrationProvider(_inMemoryLoggerMock.Object, _configurationMock); var uniqueId = inMemoryProvider.Register("ClientApp", "https://www.someclient.com"); Assert.IsTrue(inMemoryProvider.HasRegistration(uniqueId)); }
public void RegisterHeartBeat_EmptyUUidApplicationRegistered_ThrowsArgumentException() { var inMemoryProvider = new InMemoryRegistrationProvider(_inMemoryLoggerMock.Object, _configurationMock); inMemoryProvider.Register("ClientApp", "https://www.someclient.com"); Assert.Throws <RpcException>(() => inMemoryProvider.RegisterHeartBeat(new UUID())); }
public void ResolveHost_RegistrationExpiredInDistributor_ThrowsRpcException() { var inMemorySettings = new Dictionary <string, string> { { "Discoverio.Server:DeRegisterCycleFrequency", "1" }, { "Discoverio.Server:ElapsedTimeToDeRegister", "1" }, }; var configuration = new ConfigurationBuilder() .AddInMemoryCollection(inMemorySettings) .Build(); var inMemoryProvider = new InMemoryRegistrationProvider(_inMemoryLoggerMock.Object, configuration); var discovery = new RoundRobinDistribution(inMemoryProvider, _discoveryLoggerMock.Object); var uid = inMemoryProvider.Register("ClientApp", "https://www.someclient.com"); var host = discovery.ResolveHost(uid, "ClientApp"); Assert.AreEqual("https://www.someclient.com", host); Thread.Sleep(TimeSpan.FromSeconds(2)); Assert.Throws <RpcException>(() => discovery.ResolveHost(uid, "SomeAppName")); }
public void Register_GivenInvalidUri_ThrowsArgumentException(string appName, string host) { var inMemoryProvider = new InMemoryRegistrationProvider(_inMemoryLoggerMock.Object, _configurationMock); Assert.Throws <RpcException>(() => inMemoryProvider.Register(appName, host)); }