annotate Lib/test/test_kqueue.py @ 71285:8bc9dbc61ba6 3.2

Issue #12326: document the recommended idiom for checking sys.platform on Unix systems. Also, point to the various alternatives.
author Antoine Pitrou <solipsis@pitrou.net>
date Sat, 09 Jul 2011 15:54:23 +0200
parents fdb98a7ef9be
children 96776fc3cbcc 50d19c2fac82
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
1 """
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
2 Tests for kqueue wrapper.
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
3 """
71074
fdb98a7ef9be Issue #12400: Add missing import (os) to test_kqueue
Victor Stinner <victor.stinner@haypocalc.com>
parents: 71066
diff changeset
4 import errno
fdb98a7ef9be Issue #12400: Add missing import (os) to test_kqueue
Victor Stinner <victor.stinner@haypocalc.com>
parents: 71066
diff changeset
5 import os
fdb98a7ef9be Issue #12400: Add missing import (os) to test_kqueue
Victor Stinner <victor.stinner@haypocalc.com>
parents: 71066
diff changeset
6 import select
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
7 import socket
71074
fdb98a7ef9be Issue #12400: Add missing import (os) to test_kqueue
Victor Stinner <victor.stinner@haypocalc.com>
parents: 71066
diff changeset
8 import sys
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
9 import time
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
10 import unittest
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
11
47201
9c930a32cebb #2621 rename test.test_support to test.support
Benjamin Peterson <benjamin@python.org>
parents: 45996
diff changeset
12 from test import support
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
13 if not hasattr(select, "kqueue"):
52389
d4e7470bd660 Merged revisions 70554,70588-70589,70598,70605,70611-70621,70623-70624,70626-70627 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 51122
diff changeset
14 raise unittest.SkipTest("test works only on BSD")
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
15
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
16 class TestKQueue(unittest.TestCase):
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
17 def test_create_queue(self):
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
18 kq = select.kqueue()
55593
0bb232078b8c Merged revisions 73715 via svnmerge from
Georg Brandl <georg@python.org>
parents: 52389
diff changeset
19 self.assertTrue(kq.fileno() > 0, kq.fileno())
0bb232078b8c Merged revisions 73715 via svnmerge from
Georg Brandl <georg@python.org>
parents: 52389
diff changeset
20 self.assertTrue(not kq.closed)
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
21 kq.close()
55593
0bb232078b8c Merged revisions 73715 via svnmerge from
Georg Brandl <georg@python.org>
parents: 52389
diff changeset
22 self.assertTrue(kq.closed)
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
23 self.assertRaises(ValueError, kq.fileno)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
24
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
25 def test_create_event(self):
51122
adbd77a90bde Merged revisions 69025 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 51016
diff changeset
26 from operator import lt, le, gt, ge
71066
74c6afbb524a Issue #12400: don't use sys.stderr in test_kqueue because it may be replaced by
Victor Stinner <victor.stinner@haypocalc.com>
parents: 68257
diff changeset
27
74c6afbb524a Issue #12400: don't use sys.stderr in test_kqueue because it may be replaced by
Victor Stinner <victor.stinner@haypocalc.com>
parents: 68257
diff changeset
28 fd = os.open(os.devnull, os.O_WRONLY)
74c6afbb524a Issue #12400: don't use sys.stderr in test_kqueue because it may be replaced by
Victor Stinner <victor.stinner@haypocalc.com>
parents: 68257
diff changeset
29 self.addCleanup(os.close, fd)
74c6afbb524a Issue #12400: don't use sys.stderr in test_kqueue because it may be replaced by
Victor Stinner <victor.stinner@haypocalc.com>
parents: 68257
diff changeset
30
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
31 ev = select.kevent(fd)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
32 other = select.kevent(1000)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
33 self.assertEqual(ev.ident, fd)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
34 self.assertEqual(ev.filter, select.KQ_FILTER_READ)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
35 self.assertEqual(ev.flags, select.KQ_EV_ADD)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
36 self.assertEqual(ev.fflags, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
37 self.assertEqual(ev.data, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
38 self.assertEqual(ev.udata, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
39 self.assertEqual(ev, ev)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
40 self.assertNotEqual(ev, other)
55593
0bb232078b8c Merged revisions 73715 via svnmerge from
Georg Brandl <georg@python.org>
parents: 52389
diff changeset
41 self.assertTrue(ev < other)
0bb232078b8c Merged revisions 73715 via svnmerge from
Georg Brandl <georg@python.org>
parents: 52389
diff changeset
42 self.assertTrue(other >= ev)
51122
adbd77a90bde Merged revisions 69025 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 51016
diff changeset
43 for op in lt, le, gt, ge:
adbd77a90bde Merged revisions 69025 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 51016
diff changeset
44 self.assertRaises(TypeError, op, ev, None)
adbd77a90bde Merged revisions 69025 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 51016
diff changeset
45 self.assertRaises(TypeError, op, ev, 1)
adbd77a90bde Merged revisions 69025 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 51016
diff changeset
46 self.assertRaises(TypeError, op, ev, "ev")
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
47
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
48 ev = select.kevent(fd, select.KQ_FILTER_WRITE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
49 self.assertEqual(ev.ident, fd)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
50 self.assertEqual(ev.filter, select.KQ_FILTER_WRITE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
51 self.assertEqual(ev.flags, select.KQ_EV_ADD)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
52 self.assertEqual(ev.fflags, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
53 self.assertEqual(ev.data, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
54 self.assertEqual(ev.udata, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
55 self.assertEqual(ev, ev)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
56 self.assertNotEqual(ev, other)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
57
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
58 ev = select.kevent(fd, select.KQ_FILTER_WRITE, select.KQ_EV_ONESHOT)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
59 self.assertEqual(ev.ident, fd)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
60 self.assertEqual(ev.filter, select.KQ_FILTER_WRITE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
61 self.assertEqual(ev.flags, select.KQ_EV_ONESHOT)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
62 self.assertEqual(ev.fflags, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
63 self.assertEqual(ev.data, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
64 self.assertEqual(ev.udata, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
65 self.assertEqual(ev, ev)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
66 self.assertNotEqual(ev, other)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
67
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
68 ev = select.kevent(1, 2, 3, 4, 5, 6)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
69 self.assertEqual(ev.ident, 1)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
70 self.assertEqual(ev.filter, 2)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
71 self.assertEqual(ev.flags, 3)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
72 self.assertEqual(ev.fflags, 4)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
73 self.assertEqual(ev.data, 5)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
74 self.assertEqual(ev.udata, 6)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
75 self.assertEqual(ev, ev)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
76 self.assertNotEqual(ev, other)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
77
57113
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
78 bignum = sys.maxsize * 2 + 1
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
79 ev = select.kevent(bignum, 1, 2, 3, sys.maxsize, bignum)
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
80 self.assertEqual(ev.ident, bignum)
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
81 self.assertEqual(ev.filter, 1)
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
82 self.assertEqual(ev.flags, 2)
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
83 self.assertEqual(ev.fflags, 3)
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
84 self.assertEqual(ev.data, sys.maxsize)
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
85 self.assertEqual(ev.udata, bignum)
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
86 self.assertEqual(ev, ev)
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
87 self.assertNotEqual(ev, other)
f89a93a778a8 Merged revisions 76108 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 55618
diff changeset
88
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
89 def test_queue_event(self):
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
90 serverSocket = socket.socket()
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
91 serverSocket.bind(('127.0.0.1', 0))
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
92 serverSocket.listen(1)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
93 client = socket.socket()
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
94 client.setblocking(False)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
95 try:
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
96 client.connect(('127.0.0.1', serverSocket.getsockname()[1]))
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
97 except socket.error as e:
66340
2beb25369289 Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents: 55618
diff changeset
98 self.assertEqual(e.args[0], errno.EINPROGRESS)
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
99 else:
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
100 #raise AssertionError("Connect should have raised EINPROGRESS")
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
101 pass # FreeBSD doesn't raise an exception here
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
102 server, addr = serverSocket.accept()
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
103
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
104 if sys.platform.startswith("darwin"):
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
105 flags = select.KQ_EV_ADD | select.KQ_EV_ENABLE
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
106 else:
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
107 flags = 0
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
108
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
109 kq = select.kqueue()
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
110 kq2 = select.kqueue.fromfd(kq.fileno())
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
111
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
112 ev = select.kevent(server.fileno(),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
113 select.KQ_FILTER_WRITE,
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
114 select.KQ_EV_ADD | select.KQ_EV_ENABLE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
115 kq.control([ev], 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
116 ev = select.kevent(server.fileno(),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
117 select.KQ_FILTER_READ,
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
118 select.KQ_EV_ADD | select.KQ_EV_ENABLE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
119 kq.control([ev], 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
120 ev = select.kevent(client.fileno(),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
121 select.KQ_FILTER_WRITE,
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
122 select.KQ_EV_ADD | select.KQ_EV_ENABLE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
123 kq2.control([ev], 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
124 ev = select.kevent(client.fileno(),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
125 select.KQ_FILTER_READ,
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
126 select.KQ_EV_ADD | select.KQ_EV_ENABLE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
127 kq2.control([ev], 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
128
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
129 events = kq.control(None, 4, 1)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
130 events = [(e.ident, e.filter, e.flags) for e in events]
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
131 events.sort()
66340
2beb25369289 Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents: 55618
diff changeset
132 self.assertEqual(events, [
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
133 (client.fileno(), select.KQ_FILTER_WRITE, flags),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
134 (server.fileno(), select.KQ_FILTER_WRITE, flags)])
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
135
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
136 client.send(b"Hello!")
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
137 server.send(b"world!!!")
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
138
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
139 # We may need to call it several times
51016
578dd78fb557 Merged revisions 68900 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 47201
diff changeset
140 for i in range(10):
578dd78fb557 Merged revisions 68900 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 47201
diff changeset
141 events = kq.control(None, 4, 1)
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
142 if len(events) == 4:
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
143 break
51016
578dd78fb557 Merged revisions 68900 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 47201
diff changeset
144 time.sleep(1.0)
578dd78fb557 Merged revisions 68900 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 47201
diff changeset
145 else:
578dd78fb557 Merged revisions 68900 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 47201
diff changeset
146 self.fail('timeout waiting for event notifications')
578dd78fb557 Merged revisions 68900 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 47201
diff changeset
147
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
148 events = [(e.ident, e.filter, e.flags) for e in events]
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
149 events.sort()
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
150
66340
2beb25369289 Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents: 55618
diff changeset
151 self.assertEqual(events, [
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
152 (client.fileno(), select.KQ_FILTER_WRITE, flags),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
153 (client.fileno(), select.KQ_FILTER_READ, flags),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
154 (server.fileno(), select.KQ_FILTER_WRITE, flags),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
155 (server.fileno(), select.KQ_FILTER_READ, flags)])
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
156
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
157 # Remove completely client, and server read part
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
158 ev = select.kevent(client.fileno(),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
159 select.KQ_FILTER_WRITE,
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
160 select.KQ_EV_DELETE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
161 kq.control([ev], 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
162 ev = select.kevent(client.fileno(),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
163 select.KQ_FILTER_READ,
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
164 select.KQ_EV_DELETE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
165 kq.control([ev], 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
166 ev = select.kevent(server.fileno(),
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
167 select.KQ_FILTER_READ,
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
168 select.KQ_EV_DELETE)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
169 kq.control([ev], 0, 0)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
170
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
171 events = kq.control([], 4, 0.99)
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
172 events = [(e.ident, e.filter, e.flags) for e in events]
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
173 events.sort()
66340
2beb25369289 Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents: 55618
diff changeset
174 self.assertEqual(events, [
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
175 (server.fileno(), select.KQ_FILTER_WRITE, flags)])
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
176
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
177 client.close()
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
178 server.close()
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
179 serverSocket.close()
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
180
55618
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
181 def testPair(self):
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
182 kq = select.kqueue()
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
183 a, b = socket.socketpair()
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
184
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
185 a.send(b'foo')
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
186 event1 = select.kevent(a, select.KQ_FILTER_READ, select.KQ_EV_ADD | select.KQ_EV_ENABLE)
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
187 event2 = select.kevent(b, select.KQ_FILTER_READ, select.KQ_EV_ADD | select.KQ_EV_ENABLE)
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
188 r = kq.control([event1, event2], 1, 1)
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
189 self.assertTrue(r)
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
190 self.assertFalse(r[0].flags & select.KQ_EV_ERROR)
66340
2beb25369289 Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents: 55618
diff changeset
191 self.assertEqual(b.recv(r[0].data), b'foo')
55618
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
192
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
193 a.close()
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
194 b.close()
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
195 kq.close()
0148417e1301 Merged revisions 74055 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
196
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
197 def test_main():
47201
9c930a32cebb #2621 rename test.test_support to test.support
Benjamin Peterson <benjamin@python.org>
parents: 45996
diff changeset
198 support.run_unittest(TestKQueue)
45996
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
199
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
200 if __name__ == "__main__":
376b5cb8a014 Merged revisions 61687-61688,61696,61700,61704-61705,61707-61709,61711-61712,61714-61716,61718-61722 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents:
diff changeset
201 test_main()