1
0
mirror of https://gitee.com/mirrors/Spring-Cloud-Alibaba.git synced 2021-06-26 13:25:11 +08:00

Add test case.

# Conflicts:
#	spring-cloud-alicloud-context/src/main/java/org/springframework/cloud/alicloud/context/sms/SmsConfigProperties.java
#	spring-cloud-alicloud-context/src/main/java/org/springframework/cloud/alicloud/context/sms/SmsConfigRegistration.java
#	spring-cloud-alicloud-context/src/test/java/org/springframework/cloud/alicloud/context/ans/AnsPropertiesTests.java
#	spring-cloud-alicloud-context/src/test/java/org/springframework/cloud/alicloud/context/oss/OssAutoConfigurationTests.java
#	spring-cloud-alicloud-sms/src/main/java/org/springframework/cloud/alicloud/sms/AbstractSmsService.java
#	spring-cloud-alicloud-sms/src/main/java/org/springframework/cloud/alicloud/sms/SmsInitializerEventListener.java
#	spring-cloud-alicloud-sms/src/main/java/org/springframework/cloud/alicloud/sms/config/SmsAutoConfiguration.java
This commit is contained in:
xiaolongzuo
2019-02-14 17:41:58 +08:00
parent 874e464477
commit d76de4b5a6
20 changed files with 193 additions and 81 deletions

View File

@@ -42,9 +42,8 @@ public abstract class AbstractOnceApplicationListener<T extends ApplicationEvent
ApplicationContext applicationContext = ((ApplicationContextEvent) event)
.getApplicationContext();
// skip bootstrap context or super parent context.
if (applicationContext.getParent() == null
|| BOOTSTRAP_CONFIG_NAME_VALUE.equals(applicationContext
.getEnvironment().getProperty(BOOTSTRAP_CONFIG_NAME_KEY))) {
if (BOOTSTRAP_CONFIG_NAME_VALUE.equals(applicationContext.getEnvironment()
.getProperty(BOOTSTRAP_CONFIG_NAME_KEY))) {
return;
}
}

View File

@@ -22,15 +22,16 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.AliCloudProperties;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = AliCloudContextAutoConfiguration.class)
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class, AnsContextAutoConfiguration.class })
public class AliCloudPropertiesDefaultTests {
@Autowired

View File

@@ -22,17 +22,19 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.AliCloudProperties;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = AliCloudContextAutoConfiguration.class, properties = {
"spring.cloud.alicloud.access-key=123",
"spring.cloud.alicloud.secret-key=123456" })
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class,
AnsContextAutoConfiguration.class }, properties = {
"spring.cloud.alicloud.access-key=123",
"spring.cloud.alicloud.secret-key=123456" })
public class AliCloudPropertiesLoadTests {
@Autowired

View File

@@ -22,13 +22,17 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = { AcmContextBootstrapConfiguration.class }, properties = {
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class, AnsContextAutoConfiguration.class,AcmContextBootstrapConfiguration.class }, properties = {
"spring.application.name=myapp", "spring.application.group=com.alicloud.test",
"spring.profiles.active=profile1,profile2", "spring.cloud.alicloud.access-key=ak",
"spring.cloud.alicloud.secret-key=sk",

View File

@@ -22,22 +22,29 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = { AcmContextBootstrapConfiguration.class }, properties = {
"spring.application.name=myapp", "spring.application.group=com.alicloud.test",
"spring.cloud.alicloud.access-key=ak", "spring.cloud.alicloud.secret-key=sk",
"spring.cloud.alicloud.acm.server-mode=EDAS",
"spring.cloud.alicloud.acm.server-port=11111",
"spring.cloud.alicloud.acm.server-list=10.10.10.10",
"spring.cloud.alicloud.acm.namespace=testNamespace",
"spring.cloud.alicloud.acm.endpoint=testDomain",
"spring.cloud.alicloud.acm.group=testGroup",
"spring.cloud.alicloud.acm.file-extension=yaml" })
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class, AnsContextAutoConfiguration.class,
AcmContextBootstrapConfiguration.class }, properties = {
"spring.application.name=myapp",
"spring.application.group=com.alicloud.test",
"spring.cloud.alicloud.access-key=ak",
"spring.cloud.alicloud.secret-key=sk",
"spring.cloud.alicloud.acm.server-mode=EDAS",
"spring.cloud.alicloud.acm.server-port=11111",
"spring.cloud.alicloud.acm.server-list=10.10.10.10",
"spring.cloud.alicloud.acm.namespace=testNamespace",
"spring.cloud.alicloud.acm.endpoint=testDomain",
"spring.cloud.alicloud.acm.group=testGroup",
"spring.cloud.alicloud.acm.file-extension=yaml" })
public class AcmIntegrationPropertiesLoadTests {
@Autowired

View File

@@ -22,6 +22,9 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
import com.alibaba.cloud.context.AliCloudServerMode;
@@ -30,8 +33,10 @@ import com.alibaba.cloud.context.AliCloudServerMode;
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = { AcmContextBootstrapConfiguration.class }, properties = {
"spring.application.name=myapp" })
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class, AnsContextAutoConfiguration.class,
AcmContextBootstrapConfiguration.class }, properties = {
"spring.application.name=myapp" })
public class AcmPropertiesDefaultTests {
@Autowired

View File

@@ -22,6 +22,9 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
import com.alibaba.cloud.context.AliCloudServerMode;
@@ -30,16 +33,18 @@ import com.alibaba.cloud.context.AliCloudServerMode;
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = { AcmContextBootstrapConfiguration.class }, properties = {
"spring.application.name=myapp", "spring.cloud.alicloud.access-key=ak",
"spring.cloud.alicloud.secret-key=sk",
"spring.cloud.alicloud.acm.server-mode=EDAS",
"spring.cloud.alicloud.acm.server-port=11111",
"spring.cloud.alicloud.acm.server-list=10.10.10.10",
"spring.cloud.alicloud.acm.namespace=testNamespace",
"spring.cloud.alicloud.acm.endpoint=testDomain",
"spring.cloud.alicloud.acm.group=testGroup",
"spring.cloud.alicloud.acm.file-extension=yaml" })
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class, AnsContextAutoConfiguration.class,
AcmContextBootstrapConfiguration.class }, properties = {
"spring.application.name=myapp", "spring.cloud.alicloud.access-key=ak",
"spring.cloud.alicloud.secret-key=sk",
"spring.cloud.alicloud.acm.server-mode=EDAS",
"spring.cloud.alicloud.acm.server-port=11111",
"spring.cloud.alicloud.acm.server-list=10.10.10.10",
"spring.cloud.alicloud.acm.namespace=testNamespace",
"spring.cloud.alicloud.acm.endpoint=testDomain",
"spring.cloud.alicloud.acm.group=testGroup",
"spring.cloud.alicloud.acm.file-extension=yaml" })
public class AcmPropertiesLoadTests {
@Autowired

View File

@@ -16,7 +16,7 @@
package org.springframework.cloud.alicloud.context.ans;
import static org.assertj.core.api.AssertionsForInterfaceTypes.assertThat;
import static org.assertj.core.api.Assertions.assertThat;
import org.junit.Test;
import org.springframework.cloud.alicloud.context.BaseAliCloudSpringApplication;

View File

@@ -20,23 +20,48 @@ import static org.assertj.core.api.Assertions.assertThat;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.powermock.modules.junit4.PowerMockRunnerDelegate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasContextAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.test.context.junit4.SpringRunner;
import com.alibaba.cloud.context.AliCloudServerMode;
import com.alibaba.cloud.context.ans.AliCloudAnsInitializer;
import com.alibaba.cloud.context.edas.AliCloudEdasSdk;
import com.aliyuncs.edas.model.v20170801.GetSecureTokenResponse;
import com.aliyuncs.edas.model.v20170801.InsertApplicationResponse;
/**
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = { AnsContextAutoConfiguration.class }, properties = {
"spring.cloud.alicloud.ans.server-mode=EDAS",
"spring.cloud.alicloud.ans.server-port=11111",
"spring.cloud.alicloud.ans.server-list=10.10.10.10",
"spring.cloud.alicloud.ans.client-domains=testDomain",
"spring.cloud.alicloud.ans.client-weight=0.9",
"spring.cloud.alicloud.ans.client-weights.testDomain=0.9" })
@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(SpringRunner.class)
@PowerMockIgnore("javax.management.*")
@SpringBootTest(classes = { AnsPropertiesLoadTests.TestConfiguration.class,
AliCloudContextAutoConfiguration.class, EdasContextAutoConfiguration.class,
AnsContextAutoConfiguration.class }, properties = {
"spring.application.name=myapp", "spring.cloud.alicloud.access-key=ak",
"spring.cloud.alicloud.secret-key=sk",
"spring.cloud.alicloud.edas.namespace=cn-test",
"spring.cloud.alicloud.ans.server-mode=EDAS",
"spring.cloud.alicloud.ans.server-port=11111",
"spring.cloud.alicloud.ans.server-list=10.10.10.10",
"spring.cloud.alicloud.ans.client-domains=testDomain",
"spring.cloud.alicloud.ans.client-weight=0.9",
"spring.cloud.alicloud.ans.client-weights.testDomain=0.9",
"spring.cloud.alicloud.oss.endpoint=test",
"spring.cloud.alicloud.oss.enabled=false",
"spring.cloud.alicloud.scx.enabled=false" })
@PrepareForTest({ AliCloudAnsInitializer.class })
public class AnsPropertiesLoadTests {
@Autowired
@@ -65,4 +90,26 @@ public class AnsPropertiesLoadTests {
assertThat(ansProperties.getTags().get("ANS_SERVICE_TYPE"))
.isEqualTo("SPRING_CLOUD");
}
@Configuration
@AutoConfigureBefore(EdasContextAutoConfiguration.class)
public static class TestConfiguration {
@Bean
public AliCloudEdasSdk aliCloudEdasSdk() {
GetSecureTokenResponse.SecureToken secureToken = new GetSecureTokenResponse.SecureToken();
InsertApplicationResponse.ApplicationInfo applicationInfo = new InsertApplicationResponse.ApplicationInfo();
applicationInfo.setAppId("testAppId");
secureToken.setTenantId("testTenantId");
secureToken.setAccessKey("testAK");
secureToken.setSecretKey("testSK");
secureToken.setAddressServerHost("testDomain");
AliCloudEdasSdk aliCloudEdasSdk = Mockito.mock(AliCloudEdasSdk.class);
Mockito.when(aliCloudEdasSdk.getSecureToken("cn-test"))
.thenReturn(secureToken);
Mockito.when(aliCloudEdasSdk.getApplicationInfo("myapp", "cn-test"))
.thenReturn(applicationInfo);
return aliCloudEdasSdk;
}
}
}

View File

@@ -22,13 +22,16 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = { EdasContextAutoConfiguration.class })
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class, AnsContextAutoConfiguration.class })
public class EdasPropertiesDefaultTests {
@Autowired

View File

@@ -22,15 +22,19 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = { EdasContextAutoConfiguration.class }, properties = {
"spring.cloud.alicloud.edas.namespace=testns",
"spring.cloud.alicloud.edas.application.name=myapps" })
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class,
AnsContextAutoConfiguration.class }, properties = {
"spring.cloud.alicloud.edas.namespace=testns",
"spring.cloud.alicloud.edas.application.name=myapps" })
public class EdasPropertiesLoad2Tests {
@Autowired

View File

@@ -22,14 +22,19 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = { EdasContextAutoConfiguration.class }, properties = {
"spring.cloud.alicloud.edas.namespace=testns", "spring.application.name=myapps" })
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class,
AnsContextAutoConfiguration.class }, properties = {
"spring.cloud.alicloud.edas.namespace=testns",
"spring.application.name=myapps" })
public class EdasPropertiesLoadTests {
@Autowired

View File

@@ -16,7 +16,7 @@
package org.springframework.cloud.alicloud.context.nacos;
import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
import static org.assertj.core.api.Assertions.assertThat;
import org.junit.BeforeClass;
import org.junit.Test;

View File

@@ -22,7 +22,10 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.AliCloudProperties;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasContextAutoConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
import com.aliyun.oss.OSSClient;
@@ -31,11 +34,13 @@ import com.aliyun.oss.OSSClient;
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = OssContextAutoConfiguration.class, properties = {
"spring.cloud.alicloud.accessKey=your-ak",
"spring.cloud.alicloud.secretKey=your-sk",
"spring.cloud.alicloud.oss.endpoint=http://oss-cn-beijing.aliyuncs.com",
"spring.cloud.alicloud.oss.config.userAgent=alibaba" })
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class, AnsContextAutoConfiguration.class,
OssContextAutoConfiguration.class }, properties = {
"spring.cloud.alicloud.accessKey=your-ak",
"spring.cloud.alicloud.secretKey=your-sk",
"spring.cloud.alicloud.oss.endpoint=http://oss-cn-beijing.aliyuncs.com",
"spring.cloud.alicloud.oss.config.userAgent=alibaba" })
public class OssLoadTests {
@Autowired

View File

@@ -22,6 +22,9 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.alicloud.context.AliCloudContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.ans.AnsContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasContextAutoConfiguration;
import org.springframework.cloud.alicloud.context.edas.EdasProperties;
import org.springframework.test.context.junit4.SpringRunner;
@@ -29,9 +32,11 @@ import org.springframework.test.context.junit4.SpringRunner;
* @author xiaolongzuo
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = ScxContextAutoConfiguration.class, properties = {
"spring.cloud.alicloud.scx.group-id=1-2-3-4",
"spring.cloud.alicloud.edas.namespace=cn-test" })
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class, AnsContextAutoConfiguration.class,
ScxContextAutoConfiguration.class }, properties = {
"spring.cloud.alicloud.scx.group-id=1-2-3-4",
"spring.cloud.alicloud.edas.namespace=cn-test" })
public class ScxPropertiesLoadTests {
@Autowired

View File

@@ -16,7 +16,7 @@
package org.springframework.cloud.alicloud.context.sentinel;
import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
import static org.assertj.core.api.Assertions.assertThat;
import org.junit.BeforeClass;
import org.junit.Test;

View File

@@ -16,8 +16,25 @@
package org.springframework.cloud.alicloud.context.sms;
import static org.assertj.core.api.Assertions.assertThat;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.alicloud.context.BaseAliCloudSpringApplication;
/**
* @author xiaolongzuo
*/
public class SmsPropertiesDefaultTests {
public class SmsPropertiesDefaultTests extends BaseAliCloudSpringApplication {
@Autowired
private SmsProperties smsProperties;
@Test
public void test() {
assertThat(smsProperties.getReportQueueName()).isNull();
assertThat(smsProperties.getUpQueueName()).isNull();
assertThat(smsProperties.getConnectTimeout()).isEqualTo("10000");
assertThat(smsProperties.getReadTimeout()).isEqualTo("10000");
}
}

View File

@@ -33,7 +33,11 @@ import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest(classes = { AliCloudContextAutoConfiguration.class,
EdasContextAutoConfiguration.class, AnsContextAutoConfiguration.class,
SmsContextAutoConfiguration.class })
SmsContextAutoConfiguration.class }, properties = {
"spring.cloud.alicloud.sms.reportQueueName=q1",
"spring.cloud.alicloud.sms.upQueueName=q2",
"spring.cloud.alicloud.sms.connect-timeout=20",
"spring.cloud.alicloud.sms.read-timeout=30" })
public class SmsPropertiesLoadTests {
@Autowired
@@ -41,9 +45,9 @@ public class SmsPropertiesLoadTests {
@Test
public void test() {
assertThat(smsProperties.getReportQueueName()).isNull();
assertThat(smsProperties.getUpQueueName()).isNull();
assertThat(smsProperties.getConnectTimeout()).isEqualTo("10000");
assertThat(smsProperties.getReadTimeout()).isEqualTo("10000");
assertThat(smsProperties.getReportQueueName()).isEqualTo("q1");
assertThat(smsProperties.getUpQueueName()).isEqualTo("q2");
assertThat(smsProperties.getConnectTimeout()).isEqualTo("20");
assertThat(smsProperties.getReadTimeout()).isEqualTo("30");
}
}