### Question:
OAuthClient { String prepareTokenEndpointUrl(String realm) { return config.identityProvider().url() + oidcConfiguration.getTokenEndpoint().replace("{realm}", realm); } @Autowired  OAuthClient(OidcConfiguration oidcConfiguration,
                       RealmService realmService,
                       PublicKeyCacheService publicKeyCacheService,
                       SecurityConfig config); TokenDetails obtainTokenDetailsByAuthorizationCode(String code, String redirectUrl); TokenDetails obtainTokenDetailsByRefreshToken(String refreshToken); TokenDetails obtainTokenDetailsByApplicationCredentials(); TokenDetails obtainTokenDetailsByRunOnBehalfOfUserCredentials(String username, String realm); TokenDetails obtainTokenDetailsByApplicationCredentials(String username, String password); TokenDetails obtainTokenDetailsByApplicationCredentials(String username, String password, String realm); TokenDetails generateTokenDetails(String accessToken, String refreshToken); AccessToken parseAccessToken(String accessToken, String realm); void setConfig(SecurityConfig config); void setRealmService(RealmService realmService);  }### Answer:
@Test void prepareTokenEndpointUrl() { String realm = "test-realm"; when(oidcConfiguration.getTokenEndpoint()).thenReturn("/{realm}/path"); String tokenEndpointUrl = client.prepareTokenEndpointUrl(realm); assertThat(tokenEndpointUrl, is("http: }