очень, очень тру

топ 100 блогов jdevelop02.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"));
    }

}


итого - это круто, круто, круто, круто!

Оставить комментарий

Архив записей в блогах:
Минутка ОБВМ. В последние дни в комментариях от камрадов нередко проскальзывают опасения в стиле "страшны не те светлоликие коллаборационисты, которые открыто кукарекнули о своей позиции, а те, которые молчат, держа фигу в кармане и продолжая столоваться от щедрот Режыма". На что я ...
Истребители-бомбардировщики Су-17М2 и учебно-боевой самолёт Су-17УМ из состава 67-го авиационного полка истребителей-бомбардировщиков ВВС Ленинградского военного округа; аэродром Сиверский-2; ~ 80-е годы . ...
Ходить на высоких каблуках — сложно. А представьте себе, каково ходить на копытцах? Японский бренд Walpurgis создал сандалии в форме копыт, научиться ходить в которых — настоящий вызов даже для любительниц высоких каблучков. Один неверный шаг и растяжение лодыжки гарантировано. Но, как ...
Есть Peugeot 308 SW 7 мест)  2008 год. Крыша панорамная. Цвет: Синий металлик. 1,6 AT. В салоне не курили. Детьми и животными не испачкан. ра йон: Пионерская/Комендантский. Цена: 400 тыс руб. ...
Почему когда я пешеход у меня все водители козлы. А когда я водитель, то все пешеходы козлы. Это все вокруг козлы или это я коза?:) У вас такое бывает? PS: прошу не воспринимать сей пост дословно и очень ...