use of de.codecentric.boot.admin.server.domain.values.Registration in project spring-boot-admin by codecentric.
the class EurekaServiceInstanceConverterTest method convert_secure_healthUrl.
@Test
public void convert_secure_healthUrl() {
InstanceInfo instanceInfo = mock(InstanceInfo.class);
when(instanceInfo.getSecureHealthCheckUrl()).thenReturn("https://localhost:80/health");
EurekaServiceInstance service = mock(EurekaServiceInstance.class);
when(service.getInstanceInfo()).thenReturn(instanceInfo);
when(service.getUri()).thenReturn(URI.create("http://localhost:80"));
when(service.getServiceId()).thenReturn("test");
Registration registration = new EurekaServiceInstanceConverter().convert(service);
assertThat(registration.getHealthUrl()).isEqualTo("https://localhost:80/health");
}
use of de.codecentric.boot.admin.server.domain.values.Registration in project spring-boot-admin by codecentric.
the class EurekaServiceInstanceConverterTest method convert_missing_mgmtpath.
@Test
public void convert_missing_mgmtpath() {
InstanceInfo instanceInfo = mock(InstanceInfo.class);
when(instanceInfo.getHealthCheckUrl()).thenReturn("http://localhost:80/mgmt/ping");
EurekaServiceInstance service = mock(EurekaServiceInstance.class);
when(service.getInstanceInfo()).thenReturn(instanceInfo);
when(service.getUri()).thenReturn(URI.create("http://localhost:80"));
when(service.getServiceId()).thenReturn("test");
Registration registration = new EurekaServiceInstanceConverter().convert(service);
assertThat(registration.getManagementUrl()).isEqualTo("http://localhost:80/actuator");
}
use of de.codecentric.boot.admin.server.domain.values.Registration in project spring-boot-admin by codecentric.
the class KubernetesServiceInstanceConverterTest method convert_using_port_mgmt.
@Test
public void convert_using_port_mgmt() {
ServiceInstance service = mock(ServiceInstance.class);
when(service.getUri()).thenReturn(URI.create("http://localhost:80"));
when(service.getServiceId()).thenReturn("test");
when(service.getMetadata()).thenReturn(Collections.singletonMap("port.management", "9080"));
Registration registration = new KubernetesServiceInstanceConverter().convert(service);
assertThat(registration.getManagementUrl()).isEqualTo("http://localhost:9080/actuator");
assertThat(registration.getHealthUrl()).isEqualTo("http://localhost:9080/actuator/health");
}
use of de.codecentric.boot.admin.server.domain.values.Registration in project spring-boot-admin by codecentric.
the class InfoUpdaterTest method should_update_info_for_online_with_info_endpoint_only.
@Test
public void should_update_info_for_online_with_info_endpoint_only() {
// given
Registration registration = Registration.create("foo", this.wireMock.url("/health")).build();
Instance instance = Instance.create(InstanceId.of("onl")).register(registration).withEndpoints(Endpoints.single("info", this.wireMock.url("/info"))).withStatusInfo(StatusInfo.ofUp());
StepVerifier.create(this.repository.save(instance)).expectNextCount(1).verifyComplete();
String body = "{ \"foo\": \"bar\" }";
this.wireMock.stubFor(get("/info").willReturn(okJson(body).withHeader("Content-Length", Integer.toString(body.length()))));
Instance noInfo = Instance.create(InstanceId.of("noinfo")).register(registration).withEndpoints(Endpoints.single("beans", this.wireMock.url("/beans"))).withStatusInfo(StatusInfo.ofUp());
StepVerifier.create(this.repository.save(noInfo)).expectNextCount(1).verifyComplete();
Instance offline = Instance.create(InstanceId.of("off")).register(registration).withStatusInfo(StatusInfo.ofOffline());
StepVerifier.create(this.repository.save(offline)).expectNextCount(1).verifyComplete();
Instance unknown = Instance.create(InstanceId.of("unk")).register(registration).withStatusInfo(StatusInfo.ofUnknown());
StepVerifier.create(this.repository.save(unknown)).expectNextCount(1).verifyComplete();
// when
StepVerifier.create(this.eventStore).expectSubscription().then(() -> StepVerifier.create(this.updater.updateInfo(offline.getId())).verifyComplete()).then(() -> StepVerifier.create(this.updater.updateInfo(unknown.getId())).verifyComplete()).then(() -> StepVerifier.create(this.updater.updateInfo(noInfo.getId())).verifyComplete()).expectNoEvent(Duration.ofMillis(100L)).then(() -> StepVerifier.create(this.updater.updateInfo(instance.getId())).verifyComplete()).assertNext((event) -> assertThat(event).isInstanceOf(InstanceInfoChangedEvent.class)).thenCancel().verify();
StepVerifier.create(this.repository.find(instance.getId())).assertNext((app) -> assertThat(app.getInfo()).isEqualTo(Info.from(singletonMap("foo", "bar")))).verifyComplete();
}
use of de.codecentric.boot.admin.server.domain.values.Registration in project spring-boot-admin by codecentric.
the class CloudFoundryInstanceIdGeneratorTest method test_cloud_foundry_instance_id.
@Test
public void test_cloud_foundry_instance_id() {
Registration registration = Registration.create("foo", "http://health").metadata("applicationId", "549e64cf-a478-423d-9d6d-02d803a028a8").metadata("instanceId", "0").build();
assertThat(instance.generateId(registration)).isEqualTo(InstanceId.of("549e64cf-a478-423d-9d6d-02d803a028a8:0"));
}
Aggregations