очень, очень тру
jdevelop — 02.04.2012
задачка для TDD: @Override
public String authenticate(String token) {
Resty resty = new Resty();
try {
return (String) resty.json("https://www.googleapis.com/userinfo/email?alt=json&access_token=" + token).
get("data.email");
} catch (Exception e) {
throw new RuntimeException(e);
}
}
как вы его протестируете? я так подозреваю, что "вынести чота куда-то", "сделать интерфейсов" етц.
public class GmailAuthenticationProviderTest {
@Mocked(methods = "json(String)")
Resty resty;
@Test
public void testAuthenticate() throws Exception {
final String data = "{\n" +
" \"data\": {\n" +
" \"email\": \"[email protected]\",\n" +
" \"isVerified\": true\n" +
" }\n" +
"}";
final InputStream dataStream = new ByteArrayInputStream(data.getBytes());
new Expectations() {{
resty.json("https://www.googleapis.com/userinfo/email?alt=json&access_token=123");
result = new JSONResource() {
{
inputStream = dataStream;
}
};
}};
AuthentiationProvider ap = new GmailAuthenticationProvider();
assertEquals("[email protected]", ap.authenticate("123"));
}
}
итого - это круто, круто, круто, круто!
|
|
</> |
Транскрибация: как автоматизация процесса ускоряет работу с контентом и повышает производительность
Быт поселян Иркутского уезда, 1857 — о кулаках
Прошедший шторм
Уголовные дела, как способ ничего не менять
150 лет Луначарскому. Нарком в либеральной карикатуре
Космический пришелец не собирается покидать солнечную систему.
растёт
MARY REILLY (1996)
Понцирус трифолиата: большие цветы и острые шипы

