2016-10-06 4 views
-1

У меня есть метод, который включает в себя запрос REST (Spring-Social), и я хочу издеваться над ним. Дело в том, что я не знаю, как получить доступ к вызову внутри него или вообще возможно. Я получил Mockito и PowerMock в моем распоряженииКак я могу издеваться над запросом REST из Spring Framework внутри метода

private FacebookConnectionFactory facebookFactory; 

    private OAuth2Operations authOps; 

    private final OAuthCredentials credentials; 

    ... 

    public AccessToken exchangeAuthentication(String aCode) { 
    facebookFactory = getOAuthConnectionFactory(); 
    authOps = facebookFactory.getOAuthOperations(); 
    authPar = new OAuth2Parameters(); 
    authPar.setRedirectUri(credentials.getFacebookRedirectURI()); 
    authPar.setScope("email"); 

    AccessGrant grant = authOps.exchangeForAccess(aCode, credentials.getFacebookRedirectURI(), null); // I want mock this somehow 

    AccessToken token = new AccessToken(); 
    token.setAccess_token(grant.getAccessToken()); 
    token.setExpires_in(grant.getExpireTime()); 
    token.setToken_type("bearer"); 

    return token; 
    } 
+0

Я не совсем понимаю, что вы после. Можете ли вы просто создать @ Mock's «authOps» и «учетные данные»? –

ответ

0

Вы можете использовать Mockito создать mock из OAuth2Operations и заглушки розарий вы хотите:

@Mock 
private OAuth2Operations authOps; 

и после stubexchangeForAccess вызов, как это:

when(authOps.exchangeForAccess(aCode, credentials.getFacebookRedirectURI(), null)).thenReturn(new AccessGrant());