@ -22,9 +22,7 @@ import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target ;
import java.lang.annotation.Target ;
import java.util.ArrayList ;
import java.util.ArrayList ;
import java.util.Arrays ;
import java.util.Arrays ;
import java.util.HashSet ;
import java.util.List ;
import java.util.List ;
import java.util.Set ;
import org.junit.Test ;
import org.junit.Test ;
@ -47,27 +45,22 @@ import static org.springframework.test.context.support.ActiveProfilesUtils.*;
public class ActiveProfilesUtilsTests extends AbstractContextConfigurationUtilsTests {
public class ActiveProfilesUtilsTests extends AbstractContextConfigurationUtilsTests {
private void assertResolvedProfiles ( Class < ? > testClass , String . . . expected ) {
private void assertResolvedProfiles ( Class < ? > testClass , String . . . expected ) {
assertNotNull ( testClass ) ;
assertArrayEquals ( expected , resolveActiveProfiles ( testClass ) ) ;
assertNotNull ( expected ) ;
String [ ] actual = resolveActiveProfiles ( testClass ) ;
Set < String > expectedSet = new HashSet < String > ( Arrays . asList ( expected ) ) ;
Set < String > actualSet = new HashSet < String > ( Arrays . asList ( actual ) ) ;
assertEquals ( expectedSet , actualSet ) ;
}
}
@Test
@Test
public void resolveActiveProfilesWithoutAnnotation ( ) {
public void resolveActiveProfilesWithoutAnnotation ( ) {
assertArrayEquals ( EMPTY_STRING_ARRAY , resolveActiveProfiles ( Enigma . class ) ) ;
assertResolvedProfiles ( Enigma . class , EMPTY_STRING_ARRAY ) ;
}
}
@Test
@Test
public void resolveActiveProfilesWithNoProfilesDeclared ( ) {
public void resolveActiveProfilesWithNoProfilesDeclared ( ) {
assertArrayEquals ( EMPTY_STRING_ARRAY , resolveActive Profiles ( BareAnnotations . class ) ) ;
assertResolved Profiles ( BareAnnotations . class , EMPTY_STRING_ARRAY ) ;
}
}
@Test
@Test
public void resolveActiveProfilesWithEmptyProfiles ( ) {
public void resolveActiveProfilesWithEmptyProfiles ( ) {
assertArrayEquals ( EMPTY_STRING_ARRAY , resolveActive Profiles ( EmptyProfiles . class ) ) ;
assertResolved Profiles ( EmptyProfiles . class , EMPTY_STRING_ARRAY ) ;
}
}
@Test
@Test
@ -75,6 +68,11 @@ public class ActiveProfilesUtilsTests extends AbstractContextConfigurationUtilsT
assertResolvedProfiles ( DuplicatedProfiles . class , "foo" , "bar" , "baz" ) ;
assertResolvedProfiles ( DuplicatedProfiles . class , "foo" , "bar" , "baz" ) ;
}
}
@Test
public void resolveActiveProfilesWithLocalAndInheritedDuplicatedProfiles ( ) {
assertResolvedProfiles ( ExtendedDuplicatedProfiles . class , "foo" , "bar" , "baz" , "cat" , "dog" ) ;
}
@Test
@Test
public void resolveActiveProfilesWithLocalAnnotation ( ) {
public void resolveActiveProfilesWithLocalAnnotation ( ) {
assertResolvedProfiles ( LocationsFoo . class , "foo" ) ;
assertResolvedProfiles ( LocationsFoo . class , "foo" ) ;
@ -252,6 +250,10 @@ public class ActiveProfilesUtilsTests extends AbstractContextConfigurationUtilsT
private static class DuplicatedProfiles {
private static class DuplicatedProfiles {
}
}
@ActiveProfiles ( { "cat" , "dog" , " foo" , "bar " , "cat" } )
private static class ExtendedDuplicatedProfiles extends DuplicatedProfiles {
}
@ActiveProfiles ( profiles = { "dog" , "cat" } , inheritProfiles = false )
@ActiveProfiles ( profiles = { "dog" , "cat" } , inheritProfiles = false )
private static class Animals extends LocationsBar {
private static class Animals extends LocationsBar {
}
}