File findCloudPropertiesFile() { File file = findCloudPropertiesFileFromSystem(); if (file != null) { logger.info("using configuration file from system properties"); return file; } file = findCloudPropertiesFileFromClasspath(); if (file != null) logger.info("using configuration file derived from " + classpathPropertiesFilename); else logger.info("did not find any Spring Cloud configuration file"); return file; }
@Override InputStream openFile(File file) throws IOException { return fileProvider.openFile(file); }
@Before public void init() throws IOException { env = new PassthroughEnvironmentAccessor(); env.setSystemProperty("spring.cloud.baz", "inline!"); connector.setEnvironmentAccessor(env); }
@Test public void testPrecedence() { env.setSystemProperty(LocalConfigConnector.PROPERTIES_FILE_PROPERTY, PROPERTIES_FILE_NAME); resolver = new PropertiesFileResolver(env, "spring-cloud-literal.properties"); assertEquals(PROPERTIES_FILE_NAME, resolver.findCloudPropertiesFile().getPath()); } }
@Test public void testTemplate() { resolver = new PropertiesFileResolver(env, "spring-cloud-template.properties"); env.setSystemProperty("user.home", "/foo"); assertEquals(PROPERTIES_FILE_NAME, resolver.findCloudPropertiesFileFromClasspath().getPath()); }
@Test public void testAppIdInFileAndSystem() throws IOException { env.setSystemProperty(LocalConfigConnector.PROPERTIES_FILE_PROPERTY, PROPERTY_FILE_NAME); env.setSystemProperty(LocalConfigConnector.APP_ID_PROPERTY, APP_ID); connector.setFileProvider(StubbedOpenFileLocalConfigConnector.fileContentsFromString(PROPERTY_FILE_NAME, APP_ID_PROPERTY)); assertTrue(connector.isInMatchingCloud()); assertEquals(APP_ID, connector.getApplicationInstanceInfo().getAppId()); } }
@Before public void setDefaults() { env = new PassthroughEnvironmentAccessor(); resolver = new PropertiesFileResolver(env); }
@Test public void testFromSystem() { env.setSystemProperty(LocalConfigConnector.PROPERTIES_FILE_PROPERTY, PROPERTIES_FILE_NAME); assertEquals(PROPERTIES_FILE_NAME, resolver.findCloudPropertiesFile().getPath()); }
@Test public void testSystemProperty() { env.setSystemProperty(LocalConfigConnector.PROPERTIES_FILE_PROPERTY, PROPERTIES_FILE_NAME); assertEquals(PROPERTIES_FILE_NAME, resolver.findCloudPropertiesFileFromSystem().getPath()); }
@Test public void serviceCreation() { List<ServiceInfo> services = connector.getServiceInfos(); ServiceInfo service = getServiceInfo(services, "oracle"); assertNotNull(service); assertTrue(service instanceof OracleServiceInfo); assertUriParameters((OracleServiceInfo) service); } }
@Test public void serviceCreation() { List<ServiceInfo> services = connector.getServiceInfos(); ServiceInfo service = getServiceInfo(services, "blue"); assertNotNull(service); assertTrue(service instanceof RedisServiceInfo); assertUriParameters((RedisServiceInfo) service); }
@Test public void serviceCreation() { List<ServiceInfo> services = connector.getServiceInfos(); ServiceInfo service = getServiceInfo(services, "ingres"); assertNotNull(service); assertTrue(service instanceof PostgresqlServiceInfo); assertUriParameters((PostgresqlServiceInfo) service); }
@Test public void serviceCreation() { List<ServiceInfo> services = connector.getServiceInfos(); ServiceInfo service = getServiceInfo(services, "maria"); assertNotNull(service); assertTrue(service instanceof MysqlServiceInfo); assertUriParameters((MysqlServiceInfo) service); }
@Test public void serviceCreation() { List<ServiceInfo> services = connector.getServiceInfos(); ServiceInfo service = getServiceInfo(services, "candygram"); assertNotNull(service); assertTrue(service instanceof MongoServiceInfo); assertUriParameters((MongoServiceInfo) service); }
@Test public void serviceCreation() { List<ServiceInfo> services = connector.getServiceInfos(); ServiceInfo service = getServiceInfo(services, "sql"); assertNotNull(service); assertTrue(service instanceof SqlServerServiceInfo); assertUriParameters((SqlServerServiceInfo) service); }
@Test public void serviceCreation() { List<ServiceInfo> services = connector.getServiceInfos(); ServiceInfo service = getServiceInfo(services, "db2"); assertNotNull(service); assertTrue(service instanceof DB2ServiceInfo); assertUriParameters((DB2ServiceInfo) service); }
@Test public void serviceCreation() { List<ServiceInfo> services = connector.getServiceInfos(); ServiceInfo service = getServiceInfo(services, "rabbit"); assertNotNull(service); assertTrue(service instanceof AmqpServiceInfo); assertUriParameters((AmqpServiceInfo) service); }
@Test public void serviceOverride() { env.setSystemProperty("spring.cloud.candygram", "mongodb://youruser:yourpass@40.30.20.10:4321/dbname"); List<ServiceInfo> services = connector.getServiceInfos(); ServiceInfo service = getServiceInfo(services, "candygram"); assertNotNull(service); assertTrue(service instanceof MongoServiceInfo); MongoServiceInfo mongo = (MongoServiceInfo) service; assertEquals("youruser", mongo.getUserName()); assertEquals(4321, mongo.getPort()); } }
@Test public void testFromClasspath() { resolver = new PropertiesFileResolver(env, "spring-cloud-template.properties"); env.setSystemProperty("user.home", "/foo"); assertEquals(PROPERTIES_FILE_NAME, resolver.findCloudPropertiesFile().getPath()); }
@Test public void testAppIdInConfigFile() throws IOException { env.setSystemProperty(LocalConfigConnector.PROPERTIES_FILE_PROPERTY, PROPERTY_FILE_NAME); connector.setFileProvider(StubbedOpenFileLocalConfigConnector.fileContentsFromString(PROPERTY_FILE_NAME, APP_ID_PROPERTY)); assertTrue(connector.isInMatchingCloud()); assertEquals(APP_ID, connector.getApplicationInstanceInfo().getAppId()); }