mirror of
https://github.com/spring-projects/spring-security.git
synced 2025-05-31 01:02:14 +00:00
Migrate UserDetailsManagerConfigurerTests groovy->java
This commit is contained in:
parent
f3830eec7d
commit
196f02748d
@ -275,7 +275,7 @@ public class UserDetailsManagerConfigurer<B extends ProviderManagerBuilder<B>, C
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
private UserDetails build() {
|
UserDetails build() {
|
||||||
return this.user.build();
|
return this.user.build();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -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
|
|
||||||
}
|
|
||||||
}
|
|
@ -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);
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user