From 479693ced764d5b4bf18d2cc333e569238b33cf8 Mon Sep 17 00:00:00 2001 From: Luke Taylor Date: Wed, 2 Jul 2008 18:40:55 +0000 Subject: [PATCH] SEC-900: Added extra checks on expiry time --- .../ui/rememberme/TokenBasedRememberMeServicesTests.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/src/test/java/org/springframework/security/ui/rememberme/TokenBasedRememberMeServicesTests.java b/core/src/test/java/org/springframework/security/ui/rememberme/TokenBasedRememberMeServicesTests.java index 9b8e9e4c5c..5f3addc1d2 100644 --- a/core/src/test/java/org/springframework/security/ui/rememberme/TokenBasedRememberMeServicesTests.java +++ b/core/src/test/java/org/springframework/security/ui/rememberme/TokenBasedRememberMeServicesTests.java @@ -343,7 +343,7 @@ public class TokenBasedRememberMeServicesTests extends TestCase { public void testLoginSuccessNormalWithNonUserDetailsBasedPrincipal() { TokenBasedRememberMeServices services = new TokenBasedRememberMeServices(); // SEC-822 - services.setTokenValiditySeconds(5000000); + services.setTokenValiditySeconds(500000000); MockHttpServletRequest request = new MockHttpServletRequest(); request.setRequestURI("d"); request.addParameter(TokenBasedRememberMeServices.DEFAULT_PARAMETER, "true"); @@ -354,6 +354,10 @@ public class TokenBasedRememberMeServicesTests extends TestCase { new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ABC")})); Cookie cookie = response.getCookie(TokenBasedRememberMeServices.SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY); + String expiryTime = services.decodeCookie(cookie.getValue())[1]; + long expectedExpiryTime = 1000L * 500000000; + expectedExpiryTime += System.currentTimeMillis(); + assertTrue(Long.parseLong(expiryTime) > expectedExpiryTime - 10000); assertNotNull(cookie); assertEquals(services.getTokenValiditySeconds(), cookie.getMaxAge()); assertTrue(Base64.isArrayByteBase64(cookie.getValue().getBytes()));