@@ -62,6 +62,32 @@ public void testRetrieveId() {
6262 when (hsr .getRequestURI ()).thenReturn ("/url;somesession=" +uuid );
6363 String id = urlSessionTracking .retrieveId (request );
6464 assertEquals (uuid .toString (), id );
65+
66+ String sessionIdWithTimestamp = uuid .toString () + BaseSessionTracking .SESSION_ID_TIMESTAMP_SEPARATOR + System .currentTimeMillis ();
67+ String invalidSessionIdWithTimestamp = uuid .toString () + "-abcdefgh" + BaseSessionTracking .SESSION_ID_TIMESTAMP_SEPARATOR + System .currentTimeMillis ();
68+ String sessionIdWithoutTimestamp = uuid .toString ();
69+
70+ when (hsr .getPathInfo ()).thenReturn (";somesession=" +sessionIdWithTimestamp );
71+ when (hsr .getRequestURI ()).thenReturn ("/url;somesession=" +sessionIdWithTimestamp );
72+ assertNull (urlSessionTracking .retrieveId (request ));
73+ when (hsr .getPathInfo ()).thenReturn (";somesession=" +sessionIdWithoutTimestamp );
74+ when (hsr .getRequestURI ()).thenReturn ("/url;somesession=" +sessionIdWithoutTimestamp );
75+ assertEquals (sessionIdWithoutTimestamp , urlSessionTracking .retrieveId (request ));
76+ when (hsr .getPathInfo ()).thenReturn (";somesession=" +invalidSessionIdWithTimestamp );
77+ when (hsr .getRequestURI ()).thenReturn ("/url;somesession=" +invalidSessionIdWithTimestamp );
78+ assertNull (urlSessionTracking .retrieveId (request ));
79+
80+ sc .setTimestampSufix (true );
81+ urlSessionTracking .configure (sc );
82+ when (hsr .getPathInfo ()).thenReturn (";somesession=" +sessionIdWithTimestamp );
83+ when (hsr .getRequestURI ()).thenReturn ("/url;somesession=" +sessionIdWithTimestamp );
84+ assertEquals (sessionIdWithTimestamp , urlSessionTracking .retrieveId (request ));
85+ when (hsr .getPathInfo ()).thenReturn (";somesession=" +sessionIdWithoutTimestamp );
86+ when (hsr .getRequestURI ()).thenReturn ("/url;somesession=" +sessionIdWithoutTimestamp );
87+ assertEquals (sessionIdWithoutTimestamp , urlSessionTracking .retrieveId (request ));
88+ when (hsr .getPathInfo ()).thenReturn (";somesession=" +invalidSessionIdWithTimestamp );
89+ when (hsr .getRequestURI ()).thenReturn ("/url;somesession=" +invalidSessionIdWithTimestamp );
90+ assertNull (urlSessionTracking .retrieveId (request ));
6591 }
6692
6793 @ Test
0 commit comments