2727import org .springframework .security .crypto .bcrypt .BCryptPasswordEncoder ;
2828import org .springframework .security .test .context .support .WithMockUser ;
2929import org .springframework .test .context .TestPropertySource ;
30- import org .springframework .test .context .junit4 .SpringRunner ;
3130import org .springframework .test .web .servlet .MockMvc ;
3231import org .springframework .test .web .servlet .MvcResult ;
3332import org .springframework .util .LinkedMultiValueMap ;
@@ -181,13 +180,17 @@ public void givenLoggedIn_whenCreateServiceAccount_thenRedirect3xx() throws Exce
181180 when ( userService .createServiceAccount ( any () ) ).thenAnswer ( answer -> {
182181 User createdUser = answer .getArgument ( 0 , User .class );
183182 createdUser .setId ( 1 );
184- return createdUser ;
183+ AccessToken accessToken = new AccessToken ();
184+ accessToken .setToken ( "1234" );
185+ return new UserService .ServiceAccountAndAccessToken ( createdUser , new UserService .AccessTokenWithRawSecret ( accessToken , "5678" ) );
185186 } );
186187 mvc .perform ( post ( "/admin/create-service-account" )
187188 .param ( "profile.name" , "Service Account" )
188189 .param ( "email" , "service-account" ) )
189190 .andExpect ( status ().is3xxRedirection () )
190- .andExpect ( redirectedUrl ( "/admin/users/1" ) );
191+ .andExpect ( redirectedUrl ( "/admin/users/1" ) )
192+ .andExpect ( flash ().attribute ( "message" , containsString ( "1234" ) ) )
193+ .andExpect ( flash ().attribute ( "message" , containsString ( "5678" ) ) );
191194 ArgumentCaptor <User > captor = ArgumentCaptor .forClass ( User .class );
192195 verify ( userService ).createServiceAccount ( captor .capture () );
193196 assertThat ( captor .getValue () )
@@ -200,12 +203,15 @@ public void givenLoggedIn_whenCreateServiceAccount_thenRedirect3xx() throws Exce
200203 public void givenLoggedIn_whenCreateAccessToken_thenRedirect3xx () throws Exception {
201204 User user = createUser ( 1 );
202205 AccessToken accessToken = TestUtils .createAccessToken ( 1 , user , "1234" );
206+ UserService .AccessTokenWithRawSecret accessTokenWithSecret = new UserService .AccessTokenWithRawSecret ( accessToken , "5678" );
203207 when ( userService .findUserById ( 1 ) ).thenReturn ( user );
204- when ( userService .createAccessTokenForUser ( user ) ).thenReturn ( accessToken );
208+ when ( userService .createAccessTokenForUser ( user ) ).thenReturn ( accessTokenWithSecret );
205209 when ( roleRepository .findByRole ( "ROLE_USER" ) ).thenReturn ( createRole ( 1 , "ROLE_USER" ) );
206210 mvc .perform ( post ( "/admin/users/{user}/create-access-token" , user .getId () ) )
207211 .andExpect ( status ().is3xxRedirection () )
208- .andExpect ( redirectedUrl ( "/admin/users/1" ) );
212+ .andExpect ( redirectedUrl ( "/admin/users/1" ) )
213+ .andExpect ( flash ().attribute ( "message" , containsString ( "1234" ) ) )
214+ .andExpect ( flash ().attribute ( "message" , containsString ( "5678" ) ) );
209215 verify ( userService ).createAccessTokenForUser ( user );
210216 }
211217
0 commit comments