package org.springframework.cloud.heroku; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.when; import java.util.Map; import org.junit.Test; /** * @author Ramnivas Laddad */ public class HerokuConnectorApplicationTest extends AbstractHerokuConnectorTest { @Test public void isInMatchingEnvironment() { when(mockEnvironment.getEnvValue("DYNO")).thenReturn("web.1"); assertTrue(testCloudConnector.isInMatchingCloud()); when(mockEnvironment.getEnvValue("DYNO")).thenReturn(null); assertFalse(testCloudConnector.isInMatchingCloud()); } @Test public void applicationInstanceInfo() { when(mockEnvironment.getEnvValue("SPRING_CLOUD_APP_NAME")).thenReturn("myapp"); when(mockEnvironment.getEnvValue("DYNO")).thenReturn("web.1"); when(mockEnvironment.getEnvValue("PORT")).thenReturn(Integer.toString(port)); when(mockEnvironment.getHost()).thenReturn(hostname); assertEquals("myapp", testCloudConnector.getApplicationInstanceInfo().getAppId()); assertEquals("web.1", testCloudConnector.getApplicationInstanceInfo().getInstanceId()); Map<String, Object> appProps = testCloudConnector.getApplicationInstanceInfo().getProperties(); assertEquals(hostname, appProps.get("host")); assertEquals(Integer.toString(port), appProps.get("port")); } @Test public void applicationInstanceInfoNoSpringCloudAppName() { when(mockEnvironment.getEnvValue("DYNO")).thenReturn("web.1"); when(mockEnvironment.getEnvValue("PORT")).thenReturn(Integer.toString(port)); when(mockEnvironment.getHost()).thenReturn(hostname); assertEquals("<unknown>", testCloudConnector.getApplicationInstanceInfo().getAppId()); assertEquals("web.1", testCloudConnector.getApplicationInstanceInfo().getInstanceId()); } }