Search in sources :

Example 36 with SimpleConfig

use of com.ctrip.framework.apollo.internals.SimpleConfig in project apollo by ctripcorp.

the class XmlConfigPlaceholderAutoUpdateTest method testAutoUpdateDisabled.

@Test
public void testAutoUpdateDisabled() throws Exception {
    int initialTimeout = 1000;
    int initialBatch = 2000;
    int newTimeout = 1001;
    int newBatch = 2001;
    MockConfigUtil mockConfigUtil = new MockConfigUtil();
    mockConfigUtil.setAutoUpdateInjectedSpringProperties(false);
    MockInjector.setInstance(ConfigUtil.class, mockConfigUtil);
    Properties properties = assembleProperties(TIMEOUT_PROPERTY, String.valueOf(initialTimeout), BATCH_PROPERTY, String.valueOf(initialBatch));
    SimpleConfig config = prepareConfig(ConfigConsts.NAMESPACE_APPLICATION, properties);
    ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("spring/XmlConfigPlaceholderTest1.xml");
    TestXmlBean bean = context.getBean(TestXmlBean.class);
    assertEquals(initialTimeout, bean.getTimeout());
    assertEquals(initialBatch, bean.getBatch());
    Properties newProperties = assembleProperties(TIMEOUT_PROPERTY, String.valueOf(newTimeout), BATCH_PROPERTY, String.valueOf(newBatch));
    config.onRepositoryChange(ConfigConsts.NAMESPACE_APPLICATION, newProperties);
    TimeUnit.MILLISECONDS.sleep(100);
    assertEquals(initialTimeout, bean.getTimeout());
    assertEquals(initialBatch, bean.getBatch());
}
Also used : SimpleConfig(com.ctrip.framework.apollo.internals.SimpleConfig) ClassPathXmlApplicationContext(org.springframework.context.support.ClassPathXmlApplicationContext) TestXmlBean(com.ctrip.framework.apollo.spring.XmlConfigPlaceholderTest.TestXmlBean) Properties(java.util.Properties) Test(org.junit.Test)

Example 37 with SimpleConfig

use of com.ctrip.framework.apollo.internals.SimpleConfig in project apollo by ctripcorp.

the class XmlConfigPlaceholderAutoUpdateTest method testAutoUpdateWithMultipleNamespacesWithSamePropertiesDeleted.

@Test
public void testAutoUpdateWithMultipleNamespacesWithSamePropertiesDeleted() throws Exception {
    int someTimeout = 1000;
    int someBatch = 2000;
    int anotherBatch = 3000;
    Properties applicationProperties = assembleProperties(BATCH_PROPERTY, String.valueOf(someBatch));
    Properties fxApolloProperties = assembleProperties(TIMEOUT_PROPERTY, String.valueOf(someTimeout), BATCH_PROPERTY, String.valueOf(anotherBatch));
    SimpleConfig applicationConfig = prepareConfig(ConfigConsts.NAMESPACE_APPLICATION, applicationProperties);
    prepareConfig(FX_APOLLO_NAMESPACE, fxApolloProperties);
    ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("spring/XmlConfigPlaceholderTest3.xml");
    TestXmlBean bean = context.getBean(TestXmlBean.class);
    assertEquals(someTimeout, bean.getTimeout());
    assertEquals(someBatch, bean.getBatch());
    Properties newProperties = new Properties();
    applicationConfig.onRepositoryChange(ConfigConsts.NAMESPACE_APPLICATION, newProperties);
    TimeUnit.MILLISECONDS.sleep(100);
    assertEquals(someTimeout, bean.getTimeout());
    assertEquals(anotherBatch, bean.getBatch());
}
Also used : SimpleConfig(com.ctrip.framework.apollo.internals.SimpleConfig) ClassPathXmlApplicationContext(org.springframework.context.support.ClassPathXmlApplicationContext) TestXmlBean(com.ctrip.framework.apollo.spring.XmlConfigPlaceholderTest.TestXmlBean) Properties(java.util.Properties) Test(org.junit.Test)

Example 38 with SimpleConfig

use of com.ctrip.framework.apollo.internals.SimpleConfig in project apollo by ctripcorp.

the class AbstractSpringIntegrationTest method prepareConfig.

protected SimpleConfig prepareConfig(String namespaceName, Properties properties) {
    ConfigRepository configRepository = mock(ConfigRepository.class);
    when(configRepository.getConfig()).thenReturn(properties);
    SimpleConfig config = new SimpleConfig(ConfigConsts.NAMESPACE_APPLICATION, configRepository);
    mockConfig(namespaceName, config);
    return config;
}
Also used : SimpleConfig(com.ctrip.framework.apollo.internals.SimpleConfig) ConfigRepository(com.ctrip.framework.apollo.internals.ConfigRepository)

Aggregations

SimpleConfig (com.ctrip.framework.apollo.internals.SimpleConfig)38 Properties (java.util.Properties)37 Test (org.junit.Test)37 AnnotationConfigApplicationContext (org.springframework.context.annotation.AnnotationConfigApplicationContext)23 ClassPathXmlApplicationContext (org.springframework.context.support.ClassPathXmlApplicationContext)13 TestXmlBean (com.ctrip.framework.apollo.spring.XmlConfigPlaceholderTest.TestXmlBean)11 JsonBean (com.ctrip.framework.apollo.spring.JavaConfigPlaceholderTest.JsonBean)3 SimpleDateFormat (java.text.SimpleDateFormat)2 Date (java.util.Date)2 Config (com.ctrip.framework.apollo.Config)1 ConfigChangeListener (com.ctrip.framework.apollo.ConfigChangeListener)1 ConfigRepository (com.ctrip.framework.apollo.internals.ConfigRepository)1 ConfigChangeEvent (com.ctrip.framework.apollo.model.ConfigChangeEvent)1 ApolloConfig (com.ctrip.framework.apollo.spring.annotation.ApolloConfig)1 ApolloConfigChangeListener (com.ctrip.framework.apollo.spring.annotation.ApolloConfigChangeListener)1 EnableApolloConfig (com.ctrip.framework.apollo.spring.annotation.EnableApolloConfig)1 Set (java.util.Set)1 Matchers.anyString (org.mockito.Matchers.anyString)1