@Bean ServiceDependency someDependency() { return restServiceDependency("http://example.com/foo").build(); } }
@Bean @ConditionalOnProperty(prefix="edison.serviceregistry", name="enabled", havingValue = "true") public ServiceDependency serviceRegistryDependency() { return ServiceDependencyBuilder.serviceDependency(serviceRegistryProperties.getServers()) .withName("Service Registry") .withDescription("Registers this service at a service registry") .withExpectations(expects(Availability.MEDIUM, Performance.MEDIUM)) .withCriticality(Criticality.criticality(Level.HIGH, "Service cannot be registered")) .build(); }
@Test public void shouldCopyServiceDependency() { final ServiceDependency dependency = serviceDependency("http://example.com") .withName("name") .withDescription("description") .withMediaTypes(singletonList("application/json")) .withAuthentication(AUTH_HMAC) .withMethods(asList("GET", "HEAD")) .withType("some type") .withSubtype("some subtype") .build(); assertThat(dependency).isEqualTo(copyOf(dependency).build()); assertThat(dependency.hashCode()).isEqualTo(copyOf(dependency).build().hashCode()); }
@Test public void shouldBuildServiceDependency() { final ServiceDependency dependency = serviceDependency("http://example.com") .withName("name") .withDescription("description") .withMediaTypes(singletonList("application/json")) .withMethods(asList("GET", "HEAD")) .withAuthentication(AUTH_HMAC) .build(); assertThat(dependency.getName()).isEqualTo("name"); assertThat(dependency.getDescription()).isEqualTo("description"); assertThat(dependency.getAuthentication()).isEqualTo("HMAC"); assertThat(dependency.getMediaTypes()).contains("application/json"); assertThat(dependency.getMethods()).contains("GET", "HEAD"); assertThat(dependency.getType()).isEqualTo("service"); assertThat(dependency.getSubtype()).isEqualTo("OTHER"); assertThat(dependency.getUrl()).isEqualTo("http://example.com"); }
@Test public void shouldBuildRestServiceDependency() { final ServiceDependency dependency = restServiceDependency("http://example.com") .withName("name") .withDescription("description") .withMediaTypes(singletonList("application/json")) .withAuthentication(AUTH_OAUTH) .withMethods(asList("GET", "HEAD")) .build(); assertThat(dependency.getName()).isEqualTo("name"); assertThat(dependency.getDescription()).isEqualTo("description"); assertThat(dependency.getAuthentication()).isEqualTo("OAUTH"); assertThat(dependency.getMediaTypes()).contains("application/json"); assertThat(dependency.getMethods()).contains("GET", "HEAD"); assertThat(dependency.getType()).isEqualTo("service"); assertThat(dependency.getSubtype()).isEqualTo("REST"); assertThat(dependency.getUrl()).isEqualTo("http://example.com"); }
.withCriticality(criticality(HIGH, "Bad. Really bad.")) .withExpectations(lowExpectations()) .build() )); mockMvc.perform(get("/internal/dependencies").accept(APPLICATION_JSON))
when(externalDependencies.getDependencies()).thenReturn(asList( mongoDependency(singletonList(datasource("foo:42/bar"))).withName("test").build(), restServiceDependency("foobar:4711").build() )); mockMvc.perform(get("/internal/dependencies").accept(APPLICATION_JSON))