Ensures health indicator uses configured label.

fixes gh-638
This commit is contained in:
Spencer Gibb
2017-02-14 11:40:15 -07:00
parent fe1eb8f4f1
commit 30a1f81bb5
2 changed files with 19 additions and 5 deletions

View File

@@ -48,7 +48,7 @@ public class ConfigServerHealthIndicator extends AbstractHealthIndicator {
String profiles = repository.getProfiles();
try {
Environment environment = this.environmentRepository.findOne(application, profiles, null);
Environment environment = this.environmentRepository.findOne(application, profiles, repository.getLabel());
HashMap<String, Object> detail = new HashMap<>();
detail.put("name", environment.getName());

View File

@@ -1,8 +1,6 @@
package org.springframework.cloud.config.server.config;
import static org.junit.Assert.*;
import static org.mockito.Mockito.*;
import static org.mockito.MockitoAnnotations.initMocks;
import java.util.Collections;
import org.junit.Before;
import org.junit.Test;
@@ -10,9 +8,14 @@ import org.mockito.Answers;
import org.mockito.Mock;
import org.springframework.boot.actuate.health.Status;
import org.springframework.cloud.config.environment.Environment;
import org.springframework.cloud.config.server.config.ConfigServerHealthIndicator;
import org.springframework.cloud.config.server.config.ConfigServerHealthIndicator.Repository;
import org.springframework.cloud.config.server.environment.EnvironmentRepository;
import static org.junit.Assert.assertEquals;
import static org.mockito.Mockito.anyString;
import static org.mockito.Mockito.when;
import static org.mockito.MockitoAnnotations.initMocks;
/**
* @author Spencer Gibb
*/
@@ -44,4 +47,15 @@ public class ConfigServerHealthIndicatorTests {
when(repository.findOne(anyString(), anyString(), anyString())).thenThrow(new RuntimeException());
assertEquals("wrong exception status", Status.DOWN, indicator.health().getStatus());
}
@Test
public void customLabelWorks() {
Repository repo = new Repository();
repo.setName("myname");
repo.setProfiles("myprofile");
repo.setLabel("mylabel");
this.indicator.setRepositories(Collections.singletonMap("myname", repo));
when(repository.findOne("myname", "myprofile", "mylabel")).thenReturn(environment);
assertEquals("wrong default status", Status.UP, indicator.health().getStatus());
}
}