Home
Интернет-магнат
22 Январь 2009 @ 19:32
Some code wtf:

        try {
            Integer.parseInt(String.valueOf(line.charAt(0)));
            return false;
        }
        catch (Exception e) {
            return true;
        }
Метки:
 
 
Интернет-магнат
07 Декабрь 2007 @ 17:46
Со вчерашнего вечера прозреваю. Отркытие за открытием. Сначала наткнулся на интересную вещь в GWT.
Написал простенький тестик:

scrollPane.setScrollPosition(15 * 3);
assertEquals(15 * 3, scrollPane.getScrollPosition());

В результате тест валится, потому что scrollPane.getScrollPosition() = 0. Вечером по прозревал, забил, пошел домой спать.
Утром пришел с новыми силами. Думаю: "Я - бландинко. Ему же просто некуда скролиться. Там же всего 5 записей и их высота меньше установленных 70px". Переписал тест:

scrollPane.setHeight("15px");
scrollPane.setScrollPosition(15 * 3);
assertEquals(15 * 3, scrollPane.getScrollPosition());

Ну теперь точно все должно работать. Запускаю тест - те же яйца. ) Потом вычитал в мане, что есть метод ensureVisible решили перейти на него, да и посмотреть что в интерфейсе происходит. Переписали код. Запускаем. Происходит какая-то фигня. Появляется какой-то непонятный Exception. Ну тут пошли серьозные раскопки.

В ходе которых были выявлены проблемы.
Открытие 1: Валится Arrays.sort() хотя GWT заявляет, что его поддерживает.
Начал копать дольше.
Открытие 2: Arrays.sort() оказывается на самом деле работает не по алгоритму QuickSork, а по оптимизированному алгоритму MergeSort. По крайней мере в JDK 6.
Вот это да. Чудеса. Потом выяснелось невозможное. Оказывается в GWT class Character не Comparable. Это повергло меня в шок. )
Метки: ,