package com.netflix.eureka;
import java.util.Map;
import java.util.Set;
import com.netflix.config.ConfigurationManager;
import org.junit.Assert;
import org.junit.Test;
/**
* @author Nitesh Kant
*/
public class DefaultEurekaServerConfigTest {
@Test
public void testRemoteRegionUrlsWithName2Regions() throws Exception {
String region1 = "myregion1";
String region1url = "http://local:888/eee";
String region2 = "myregion2";
String region2url = "http://local:888/eee";
ConfigurationManager.getConfigInstance().setProperty("eureka.remoteRegionUrlsWithName", region1
+ ';' + region1url
+ ',' + region2
+ ';' + region2url);
DefaultEurekaServerConfig config = new DefaultEurekaServerConfig();
Map<String, String> remoteRegionUrlsWithName = config.getRemoteRegionUrlsWithName();
Assert.assertEquals("Unexpected remote region url count.", 2, remoteRegionUrlsWithName.size());
Assert.assertTrue("Remote region 1 not found.", remoteRegionUrlsWithName.containsKey(region1));
Assert.assertTrue("Remote region 2 not found.", remoteRegionUrlsWithName.containsKey(region2));
Assert.assertEquals("Unexpected remote region 1 url.", region1url, remoteRegionUrlsWithName.get(region1));
Assert.assertEquals("Unexpected remote region 2 url.", region2url, remoteRegionUrlsWithName.get(region2));
}
@Test
public void testRemoteRegionUrlsWithName1Region() throws Exception {
String region1 = "myregion1";
String region1url = "http://local:888/eee";
ConfigurationManager.getConfigInstance().setProperty("eureka.remoteRegionUrlsWithName", region1
+ ';' + region1url);
DefaultEurekaServerConfig config = new DefaultEurekaServerConfig();
Map<String, String> remoteRegionUrlsWithName = config.getRemoteRegionUrlsWithName();
Assert.assertEquals("Unexpected remote region url count.", 1, remoteRegionUrlsWithName.size());
Assert.assertTrue("Remote region 1 not found.", remoteRegionUrlsWithName.containsKey(region1));
Assert.assertEquals("Unexpected remote region 1 url.", region1url, remoteRegionUrlsWithName.get(region1));
}
@Test
public void testGetGlobalAppWhiteList() throws Exception {
String whitelistApp = "myapp";
ConfigurationManager.getConfigInstance().setProperty("eureka.remoteRegion.global.appWhiteList", whitelistApp);
DefaultEurekaServerConfig config = new DefaultEurekaServerConfig();
Set<String> globalList = config.getRemoteRegionAppWhitelist(null);
Assert.assertNotNull("Global whitelist is null.", globalList);
Assert.assertEquals("Global whitelist not as expected.", 1, globalList.size());
Assert.assertEquals("Global whitelist not as expected.", whitelistApp, globalList.iterator().next());
}
@Test
public void testGetRegionAppWhiteList() throws Exception {
String globalWhiteListApp = "myapp";
String regionWhiteListApp = "myapp";
ConfigurationManager.getConfigInstance().setProperty("eureka.remoteRegion.global.appWhiteList", globalWhiteListApp);
ConfigurationManager.getConfigInstance().setProperty("eureka.remoteRegion.region1.appWhiteList", regionWhiteListApp);
DefaultEurekaServerConfig config = new DefaultEurekaServerConfig();
Set<String> regionList = config.getRemoteRegionAppWhitelist(null);
Assert.assertNotNull("Region whitelist is null.", regionList);
Assert.assertEquals("Region whitelist not as expected.", 1, regionList.size());
Assert.assertEquals("Region whitelist not as expected.", regionWhiteListApp, regionList.iterator().next());
}
}