Răsfoiți Sursa

Migrate UserDetailsManagerConfigurerTests groovy->java

Adolfo Eloy 7 ani în urmă
părinte
comite
196f02748d

+ 1 - 1
config/src/main/java/org/springframework/security/config/annotation/authentication/configurers/provisioning/UserDetailsManagerConfigurer.java

@@ -275,7 +275,7 @@ public class UserDetailsManagerConfigurer<B extends ProviderManagerBuilder<B>, C
 			return this;
 		}
 
-		private UserDetails build() {
+		UserDetails build() {
 			return this.user.build();
 		}
 	}

+ 0 - 97
config/src/test/groovy/org/springframework/security/config/annotation/provisioning/UserDetailsManagerConfigurerTests.groovy

@@ -1,97 +0,0 @@
-/*
- * Copyright 2002-2013 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.springframework.security.config.annotation.provisioning
-
-import org.springframework.security.config.annotation.authentication.configurers.provisioning.UserDetailsManagerConfigurer;
-import org.springframework.security.core.authority.SimpleGrantedAuthority
-import org.springframework.security.core.userdetails.UserDetails
-import org.springframework.security.provisioning.InMemoryUserDetailsManager
-
-import spock.lang.Specification
-
-/**
- *
- * @author Rob Winch
- *
- */
-class UserDetailsManagerConfigurerTests extends Specification {
-
-	def "all attributes supported"() {
-		setup:
-			InMemoryUserDetailsManager userDetailsManager = new InMemoryUserDetailsManager([])
-		when:
-			UserDetails userDetails = new UserDetailsManagerConfigurer<InMemoryUserDetailsManager,UserDetailsManagerConfigurer<InMemoryUserDetailsManager>>(userDetailsManager)
-				.withUser("user")
-					.password("password")
-					.roles("USER")
-					.disabled(true)
-					.accountExpired(true)
-					.accountLocked(true)
-					.credentialsExpired(true)
-					.build()
-		then:
-			userDetails.username == 'user'
-			userDetails.password == 'password'
-			userDetails.authorities.collect { it.authority } == ["ROLE_USER"]
-			!userDetails.accountNonExpired
-			!userDetails.accountNonLocked
-			!userDetails.credentialsNonExpired
-			!userDetails.enabled
-	}
-
-	def "authorities(GrantedAuthorities...) works"() {
-		setup:
-			InMemoryUserDetailsManager userDetailsManager = new InMemoryUserDetailsManager([])
-			SimpleGrantedAuthority authority = new SimpleGrantedAuthority("ROLE_USER")
-		when:
-			UserDetails userDetails = new UserDetailsManagerConfigurer<InMemoryUserDetailsManager,UserDetailsManagerConfigurer<InMemoryUserDetailsManager>>(userDetailsManager)
-				.withUser("user")
-					.password("password")
-					.authorities(authority)
-					.build()
-		then:
-			userDetails.authorities == [authority] as Set
-	}
-
-	def "authorities(String...) works"() {
-		setup:
-			InMemoryUserDetailsManager userDetailsManager = new InMemoryUserDetailsManager([])
-			String authority = "ROLE_USER"
-		when:
-			UserDetails userDetails = new UserDetailsManagerConfigurer<InMemoryUserDetailsManager,UserDetailsManagerConfigurer<InMemoryUserDetailsManager>>(userDetailsManager)
-				.withUser("user")
-					.password("password")
-					.authorities(authority)
-					.build()
-		then:
-			userDetails.authorities.collect { it.authority } == [authority]
-	}
-
-
-	def "authorities(List) works"() {
-		setup:
-			InMemoryUserDetailsManager userDetailsManager = new InMemoryUserDetailsManager([])
-			SimpleGrantedAuthority authority = new SimpleGrantedAuthority("ROLE_USER")
-		when:
-			UserDetails userDetails = new UserDetailsManagerConfigurer<InMemoryUserDetailsManager,UserDetailsManagerConfigurer<InMemoryUserDetailsManager>>(userDetailsManager)
-				.withUser("user")
-					.password("password")
-					.authorities([authority])
-					.build()
-		then:
-			userDetails.authorities == [authority] as Set
-	}
-}

+ 107 - 0
config/src/test/java/org/springframework/security/config/annotation/authentication/configurers/provisioning/UserDetailsManagerConfigurerTests.java

@@ -0,0 +1,107 @@
+/*
+ * Copyright 2002-2017 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.springframework.security.config.annotation.authentication.configurers.provisioning;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.util.Arrays;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
+import org.springframework.security.core.authority.SimpleGrantedAuthority;
+import org.springframework.security.core.userdetails.UserDetails;
+import org.springframework.security.provisioning.InMemoryUserDetailsManager;
+
+/**
+*
+* @author Rob Winch
+* @author Adolfo Eloy
+*/
+public class UserDetailsManagerConfigurerTests {
+
+	private InMemoryUserDetailsManager userDetailsManager;
+
+	@Before
+	public void setup() {
+		userDetailsManager = new InMemoryUserDetailsManager();
+	}
+
+	@Test
+	public void allAttributesSupported() {
+		UserDetails userDetails = new UserDetailsManagerConfigurer<AuthenticationManagerBuilder,
+				InMemoryUserDetailsManagerConfigurer<AuthenticationManagerBuilder>>(userDetailsManager)
+			.withUser("user")
+			.password("password")
+			.roles("USER")
+			.disabled(true)
+			.accountExpired(true)
+			.accountLocked(true)
+			.credentialsExpired(true)
+			.build();
+
+		assertThat(userDetails.getUsername()).isEqualTo("user");
+		assertThat(userDetails.getPassword()).isEqualTo("password");
+		assertThat(userDetails.getAuthorities().stream().findFirst().get().getAuthority()).isEqualTo("ROLE_USER");
+		assertThat(userDetails.isAccountNonExpired()).isFalse();
+		assertThat(userDetails.isAccountNonLocked()).isFalse();
+		assertThat(userDetails.isCredentialsNonExpired()).isFalse();
+		assertThat(userDetails.isEnabled()).isFalse();
+	}
+
+	@Test
+	public void authoritiesWithGrantedAuthorityWorks() {
+		SimpleGrantedAuthority authority = new SimpleGrantedAuthority("ROLE_USER");
+
+		UserDetails userDetails = new UserDetailsManagerConfigurer<AuthenticationManagerBuilder,
+				InMemoryUserDetailsManagerConfigurer<AuthenticationManagerBuilder>>(userDetailsManager)
+			.withUser("user")
+				.password("password")
+				.authorities(authority)
+				.build();
+
+		assertThat(userDetails.getAuthorities().stream().findFirst().get()).isEqualTo(authority);
+	}
+
+	@Test
+	public void authoritiesWithStringAuthorityWorks() {
+		String authority = "ROLE_USER";
+
+		UserDetails userDetails = new UserDetailsManagerConfigurer<AuthenticationManagerBuilder,
+				InMemoryUserDetailsManagerConfigurer<AuthenticationManagerBuilder>>(userDetailsManager)
+			.withUser("user")
+				.password("password")
+				.authorities(authority)
+				.build();
+
+		assertThat(userDetails.getAuthorities().stream().findFirst().get().getAuthority()).isEqualTo(authority);
+	}
+
+	@Test
+	public void authoritiesWithAListOfGrantedAuthorityWorks() {
+		SimpleGrantedAuthority authority = new SimpleGrantedAuthority("ROLE_USER");
+
+		UserDetails userDetails = new UserDetailsManagerConfigurer<AuthenticationManagerBuilder,
+				InMemoryUserDetailsManagerConfigurer<AuthenticationManagerBuilder>>(userDetailsManager)
+			.withUser("user")
+				.password("password")
+				.authorities(Arrays.asList(authority))
+				.build();
+
+		assertThat(userDetails.getAuthorities().stream().findFirst().get()).isEqualTo(authority);
+	}
+}