очень, очень тру
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\": \"mycool@email.com\",\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("mycool@email.com", ap.authenticate("123"));
}
}
итого - это круто, круто, круто, круто!
|
|
</> |
Ипотечное страхование недвижимости: что именно страхуют и почему это важно для выплат и цены
Доброе утро!
ОСОБЕННОСТИ НАЦИОНАЛЬНОЙ РАЗВЕДКИ. АМЕРИКА
Торможение Телеграма
ГРОЗА ДВЕНАДЦАТОГО ГОДА. СТРАТЕГИЧЕСКИЙ ОТХОД
Фалейчик сядет за взятку от Блейзера: тривиальная коррупционная история с 
