Имеем: Web-сервер на Twisted Web (язык Python, если что), шаблоны рендерятся при помощи Jinja2 (генерируется валидный HTML 4.01). В связи с постоянными регрессиями очень хочется в имеющуюся систему тестирования (на Twisted Trial) включить тесты для вывода web-сервера.
В голову приходит только парсить полученные странички в поисках нужны тэгов, но это значит завязывать тесты на дизайн, что очень-очень плохо.
Такая печальная история: пишу свою модель для построения дерева из БД. Вроде, написал, все unit-тесты проходит без вопросов, но на реальном примере, когда её впихиваешь в QTreeView, происходит странное падение: http://pastebin.com/gGqRpJPX. Район падения в GDB:
#0 _int_malloc (av=<value optimized out>, bytes=<value optimized out>) at malloc.c:4436
#1 0x01c5bf9c in *__GI___libc_malloc (bytes=138) at malloc.c:3660
#2 0x012bcb8d in qMalloc (size=138) at global/qmalloc.cpp:55
#3 0x0130fad4 in QString::fromLatin1_helper (str=0x16cb3c0 "TreeResourceModel::parent: No parent row for index %1,%2,%3", size=59)
at tools/qstring.cpp:3603
#4 0x013158f4 in QString::fromAscii_helper (str=0x16cb3c0 "TreeResourceModel::parent: No parent row for index %1,%2,%3", size=88) at tools/qstring.cpp:3638
#5 0x0167ed65 in QString (this=0x82b9838, index=...) at /usr/include/qt4/QtCore/qstring.h:413
#6 IBD::TreeResourceModel::parent (this=0x82b9838, index=...) at ../pkibd-core/libibd-core/treeresourcemodel.cpp:525
#7 0x00b280cd in QModelIndex::parent (this=0x82b43d8, painter=0xbfffd28c, option=..., index=...)
at ../../include/QtCore/../../src/corelib/kernel/qabstractitemmodel.h:389
#8 QTreeView::drawRow (this=0x82b43d8, painter=0xbfffd28c, option=..., index=...) at itemviews/qtreeview.cpp:1471
#9 0x00b334a9 in QTreeView::drawTree (this=0x82b43d8, painter=0xbfffd28c, region=...) at itemviews/qtreeview.cpp:1433
#10 0x00b365bd in QTreeView::paintEvent (this=0x82b43d8, event=0xbfffdae4) at itemviews/qtreeview.cpp:1266
Пробовал снести весь код из parent() - падает где-то ещё, но тоже в чём-то вызванном из drawRow(). Как я только не изгалялся в тестах с этим parent() - воспроизвести падение не могу, только на живой вьюшке. Гугл тоже ничем не помог.
Собираюсь поездить по Украине, но очень нужен интернет. Сейчас имеется скайлинковский модем-роутер. Есть ли какой-нибудь местный провайдер, чью симку можно было бы запихнуть в этот модем? Если можно, укажите расценки/ссылку на таковые.
Поставил себе роутер от хвалёного скайлинка и сразу же столкнулся с проблемой: http://www.google.com не открывается. При этом, можно открыть, например, gmail, но только пока он не полезет на гугловский сервер авторизации (который располагается на домене http://www.google.com). Поиск также не открывается.
Traceroute и ping:
$ traceroute www.google.com
traceroute to www.google.com (74.125.232.20), 30 hops max, 60 byte packets
1 192.168.10.1 (192.168.10.1) 0.512 ms 0.949 ms 1.389 ms
2 pdsn-m34-6cm6.msk.skylink.ru (212.119.106.156) 77.646 ms 101.198 ms 101.597 ms
3 c6500-m34-1-vl101.msk.skylink.ru (212.119.106.2) 101.994 ms 101.991 ms 140.099 ms
4 core-m9-2-ge1-3-0-0.cell.ru (212.119.97.9) 140.494 ms 147.858 ms 194.713 ms
5 core-m9-1-ge1-3-0-0.cell.ru (212.119.97.20) 163.534 ms 163.933 ms 164.324 ms
6 msk-ix-gw1.google.com (193.232.244.232) 164.318 ms 97.881 ms 96.733 ms
7 74.125.232.20 (74.125.232.20) 135.252 ms 190.431 ms 182.093 ms
$ traceroute mail.google.com
traceroute to mail.google.com (74.125.87.19), 30 hops max, 60 byte packets
1 192.168.10.1 (192.168.10.1) 0.622 ms 1.027 ms 1.479 ms
2 pdsn-m34-6cm6.msk.skylink.ru (212.119.106.156) 77.676 ms 85.450 ms 85.845 ms
3 c6500-m34-1-vl101.msk.skylink.ru (212.119.106.2) 124.542 ms 124.924 ms 132.207 ms
4 core-m9-2-ge1-3-0-0.cell.ru (212.119.97.9) 148.115 ms 148.510 ms 148.904 ms
5 core-m9-1-ge1-3-0-0.cell.ru (212.119.97.20) 148.897 ms 149.283 ms 149.679 ms
6 msk-ix-gw1.google.com (193.232.244.232) 171.240 ms 75.225 ms 120.507 ms
7 72.14.239.254 (72.14.239.254) 136.236 ms 136.613 ms 190.777 ms
8 209.85.248.43 (209.85.248.43) 191.237 ms 209.85.248.47 (209.85.248.47) 198.624 ms 206.436 ms
9 72.14.238.101 (72.14.238.101) 206.822 ms 72.14.232.217 (72.14.232.217) 207.206 ms 72.14.232.221 (72.14.232.221) 207.591 ms
10 hb-in-f19.1e100.net (74.125.87.19) 245.874 ms 246.270 ms 246.237 ms
$ ping www.google.com
PING www.l.google.com (74.125.232.17) 56(84) bytes of data.
64 bytes from 74.125.232.17: icmp_seq=1 ttl=58 time=93.3 ms
64 bytes from 74.125.232.17: icmp_seq=2 ttl=58 time=98.9 ms
64 bytes from 74.125.232.17: icmp_seq=3 ttl=58 time=97.6 ms
64 bytes from 74.125.232.17: icmp_seq=4 ttl=58 time=100 ms
64 bytes from 74.125.232.17: icmp_seq=5 ttl=58 time=111 ms
^C64 bytes from 74.125.232.17: icmp_seq=6 ttl=58 time=103 ms
--- www.l.google.com ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 25678ms
rtt min/avg/max/mdev = 93.398/100.947/111.465/5.634 ms
Прочие сайты работают нормально. Есть какие-нибудь идеи?
В документации к классу QFtp рекламируют новые высокоуровневые классы, как замену старым низкоуровневым, да и самому возня с QFtp надоела. Тесту ради написал следующий код (импорты и main пропущены):
Авторы Ubuntu опять курнули лишнего переработали дизайн, и теперь в новой Убунте кнопки на заголовке ока по умолчанию располагаются слева, вот так. Ещё до меня был открыт баг. Если кому-то это нововведение тоже жизни не даёт, можете выполнить простую команду:
Экспериментирую с Chromium, встал вопрос о логине на WebMoney. Внимание, вопрос: есть ли в творении гугла нормальные средства для работы с сертификатами X.509?