when(containerRequest.getHeaderValue(SecurityContextFilter.HEADER_DATE)).thenReturn(dateString);
when(containerRequest.getHeaderValue(SecurityContextFilter.HEADER_NONCE)).thenReturn("123");
when(containerRequest.getPath()).thenReturn("user/555");
when(containerRequest.getMethod()).thenReturn("POST");
when(userRepository.findByUuid(user.getUuid().toString())).thenReturn(user);
doAnswer(new Answer() {
public Object answer(InvocationOnMock invocation) throws Throwable {
SecurityContext context = (SecurityContext) invocation.getArguments()[0];
ExternalUser user = (ExternalUser) context.getUserPrincipal();
assertThat(user.getId(), is(externalUser.getId()));