4
sys.path.insert(1, os.path.join(sys.path[0], '..'))
8
from Xlib.protocol import request, rq, event
9
import Xlib.protocol.event
15
def __init__(self, *args, **kws):
16
self.array = apply(array.array, args, kws)
19
return len(self.array)
21
def __getslice__(self, x, y):
22
return list(self.array[x:y])
24
def __getattr__(self, attr):
25
return getattr(self.array, attr)
27
def __cmp__(self, other):
28
return cmp(self.array.tolist(), other)
33
bin = string.join(map(lambda c: '\\x%02x' % ord(c), bin), '')
36
for i in range(0, len(bin), 16):
37
bins.append(bin[i:i+16])
40
for i in range(0, len(bins), 2):
42
bins2.append("'%s' '%s'" % (bins[i], bins[i + 1]))
44
bins2.append("'%s'" % bins[i])
46
return string.join(bins2, ' \\\n ')
49
def get_resource_class(self, x):
52
event_classes = Xlib.protocol.event.event_class
53
dummy_display = DummyDisplay()
57
if struct.unpack('BB', struct.pack('H', 0x0100))[0] != 1:
58
sys.stderr.write('Big-endian tests, skipping on this system.\n')
63
class TestKeymapNotify(unittest.TestCase):
67
'data': [160, 192, 133, 223, 245, 128, 133, 188, 208, 142, 202, 142, 218, 238, 145, 150, 211, 150, 165, 230, 149, 162, 139, 159, 135, 255, 246, 202, 232, 185, 164],
69
self.evt_bin_0 = '\x9a\xa0\xc0\x85' '\xdf\xf5\x80\x85' \
70
'\xbc\xd0\x8e\xca' '\x8e\xda\xee\x91' \
71
'\x96\xd3\x96\xa5' '\xe6\x95\xa2\x8b' \
72
'\x9f\x87\xff\xf6' '\xca\xe8\xb9\xa4'
76
bin = apply(event.KeymapNotify._fields.to_binary, (), self.evt_args_0)
78
assert bin == self.evt_bin_0
79
except AssertionError:
80
raise AssertionError(tohex(bin))
82
def testUnpack0(self):
83
args, remain = event.KeymapNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
85
assert len(remain) == 0
86
except AssertionError:
87
raise AssertionError(tohex(remain))
89
assert args == self.evt_args_0
90
except AssertionError:
91
raise AssertionError(args)
94
class TestExpose(unittest.TestCase):
98
'sequence_number': 56268,
102
'window': 1381709156,
106
self.evt_bin_0 = '\xfe\x00\xdb\xcc' '\x52\x5b\x35\x64' \
107
'\x42\x4e\x4d\x28' '\x67\x01\x56\xc6' \
108
'\xea\xd6\x00\x00' '\x00\x00\x00\x00' \
109
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
113
bin = apply(event.Expose._fields.to_binary, (), self.evt_args_0)
115
assert bin == self.evt_bin_0
116
except AssertionError:
117
raise AssertionError(tohex(bin))
119
def testUnpack0(self):
120
args, remain = event.Expose._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
122
assert len(remain) == 0
123
except AssertionError:
124
raise AssertionError(tohex(remain))
126
assert args == self.evt_args_0
127
except AssertionError:
128
raise AssertionError(args)
131
class TestGraphicsExpose(unittest.TestCase):
135
'sequence_number': 6380,
137
'drawable': 820411264,
143
'minor_event': 22632,
145
self.evt_bin_0 = '\xf2\x00\x18\xec' '\x30\xe6\x7b\x80' \
146
'\xe0\xf9\xa3\x22' '\xe4\xbc\x01\x60' \
147
'\x58\x68\xf7\x59' '\xd8\x00\x00\x00' \
148
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
152
bin = apply(event.GraphicsExpose._fields.to_binary, (), self.evt_args_0)
154
assert bin == self.evt_bin_0
155
except AssertionError:
156
raise AssertionError(tohex(bin))
158
def testUnpack0(self):
159
args, remain = event.GraphicsExpose._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
161
assert len(remain) == 0
162
except AssertionError:
163
raise AssertionError(tohex(remain))
165
assert args == self.evt_args_0
166
except AssertionError:
167
raise AssertionError(args)
170
class TestNoExpose(unittest.TestCase):
173
'sequence_number': 46171,
176
'window': 1319843810,
177
'minor_event': 45687,
179
self.evt_bin_0 = '\xbb\x00\xb4\x5b' '\x4e\xab\x37\xe2' \
180
'\xb2\x77\xf2\x00' '\x00\x00\x00\x00' \
181
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
182
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
186
bin = apply(event.NoExpose._fields.to_binary, (), self.evt_args_0)
188
assert bin == self.evt_bin_0
189
except AssertionError:
190
raise AssertionError(tohex(bin))
192
def testUnpack0(self):
193
args, remain = event.NoExpose._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
195
assert len(remain) == 0
196
except AssertionError:
197
raise AssertionError(tohex(remain))
199
assert args == self.evt_args_0
200
except AssertionError:
201
raise AssertionError(args)
204
class TestVisibilityNotify(unittest.TestCase):
208
'sequence_number': 52805,
210
'window': 1543431298,
212
self.evt_bin_0 = '\xf2\x00\xce\x45' '\x5b\xfe\xe4\x82' \
213
'\xee\x00\x00\x00' '\x00\x00\x00\x00' \
214
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
215
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
219
bin = apply(event.VisibilityNotify._fields.to_binary, (), self.evt_args_0)
221
assert bin == self.evt_bin_0
222
except AssertionError:
223
raise AssertionError(tohex(bin))
225
def testUnpack0(self):
226
args, remain = event.VisibilityNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
228
assert len(remain) == 0
229
except AssertionError:
230
raise AssertionError(tohex(remain))
232
assert args == self.evt_args_0
233
except AssertionError:
234
raise AssertionError(args)
237
class TestCreateNotify(unittest.TestCase):
241
'sequence_number': 8253,
243
'border_width': 53414,
251
self.evt_bin_0 = '\xff\x00\x20\x3d' '\x27\x00\x3a\x54' \
252
'\x00\x81\xc8\x1c' '\x86\x1c\xa2\x9c' \
253
'\x22\xa7\x3c\x92' '\xd0\xa6\x01\x00' \
254
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
258
bin = apply(event.CreateNotify._fields.to_binary, (), self.evt_args_0)
260
assert bin == self.evt_bin_0
261
except AssertionError:
262
raise AssertionError(tohex(bin))
264
def testUnpack0(self):
265
args, remain = event.CreateNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
267
assert len(remain) == 0
268
except AssertionError:
269
raise AssertionError(tohex(remain))
271
assert args == self.evt_args_0
272
except AssertionError:
273
raise AssertionError(args)
276
class TestDestroyNotify(unittest.TestCase):
279
'sequence_number': 49137,
282
'window': 1716558237,
284
self.evt_bin_0 = '\xdf\x00\xbf\xf1' '\x18\x56\x02\x91' \
285
'\x66\x50\x99\x9d' '\x00\x00\x00\x00' \
286
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
287
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
291
bin = apply(event.DestroyNotify._fields.to_binary, (), self.evt_args_0)
293
assert bin == self.evt_bin_0
294
except AssertionError:
295
raise AssertionError(tohex(bin))
297
def testUnpack0(self):
298
args, remain = event.DestroyNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
300
assert len(remain) == 0
301
except AssertionError:
302
raise AssertionError(tohex(remain))
304
assert args == self.evt_args_0
305
except AssertionError:
306
raise AssertionError(args)
309
class TestUnmapNotify(unittest.TestCase):
313
'sequence_number': 4412,
316
'window': 1455493798,
318
self.evt_bin_0 = '\xd9\x00\x11\x3c' '\x42\xe1\xef\x20' \
319
'\x56\xc1\x12\xa6' '\x00\x00\x00\x00' \
320
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
321
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
325
bin = apply(event.UnmapNotify._fields.to_binary, (), self.evt_args_0)
327
assert bin == self.evt_bin_0
328
except AssertionError:
329
raise AssertionError(tohex(bin))
331
def testUnpack0(self):
332
args, remain = event.UnmapNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
334
assert len(remain) == 0
335
except AssertionError:
336
raise AssertionError(tohex(remain))
338
assert args == self.evt_args_0
339
except AssertionError:
340
raise AssertionError(args)
343
class TestMapNotify(unittest.TestCase):
346
'sequence_number': 65096,
349
'window': 1882369959,
352
self.evt_bin_0 = '\xe4\x00\xfe\x48' '\x13\x96\x31\xdc' \
353
'\x70\x32\xaf\xa7' '\x00\x00\x00\x00' \
354
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
355
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
359
bin = apply(event.MapNotify._fields.to_binary, (), self.evt_args_0)
361
assert bin == self.evt_bin_0
362
except AssertionError:
363
raise AssertionError(tohex(bin))
365
def testUnpack0(self):
366
args, remain = event.MapNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
368
assert len(remain) == 0
369
except AssertionError:
370
raise AssertionError(tohex(remain))
372
assert args == self.evt_args_0
373
except AssertionError:
374
raise AssertionError(args)
377
class TestMapRequest(unittest.TestCase):
380
'parent': 1664235152,
381
'sequence_number': 51552,
385
self.evt_bin_0 = '\xab\x00\xc9\x60' '\x63\x32\x36\x90' \
386
'\x1d\x21\xf1\x52' '\x00\x00\x00\x00' \
387
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
388
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
392
bin = apply(event.MapRequest._fields.to_binary, (), self.evt_args_0)
394
assert bin == self.evt_bin_0
395
except AssertionError:
396
raise AssertionError(tohex(bin))
398
def testUnpack0(self):
399
args, remain = event.MapRequest._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
401
assert len(remain) == 0
402
except AssertionError:
403
raise AssertionError(tohex(remain))
405
assert args == self.evt_args_0
406
except AssertionError:
407
raise AssertionError(args)
410
class TestReparentNotify(unittest.TestCase):
413
'sequence_number': 9256,
420
'window': 1142506827,
422
self.evt_bin_0 = '\xe5\x00\x24\x28' '\x77\x39\xbd\xd5' \
423
'\x44\x19\x45\x4b' '\x36\x5d\xc4\x52' \
424
'\x90\x55\xd2\xb3' '\x01\x00\x00\x00' \
425
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
429
bin = apply(event.ReparentNotify._fields.to_binary, (), self.evt_args_0)
431
assert bin == self.evt_bin_0
432
except AssertionError:
433
raise AssertionError(tohex(bin))
435
def testUnpack0(self):
436
args, remain = event.ReparentNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
438
assert len(remain) == 0
439
except AssertionError:
440
raise AssertionError(tohex(remain))
442
assert args == self.evt_args_0
443
except AssertionError:
444
raise AssertionError(args)
447
class TestConfigureNotify(unittest.TestCase):
451
'sequence_number': 62364,
454
'border_width': 7244,
458
'above_sibling': 1099666850,
459
'window': 2046157981,
462
self.evt_bin_0 = '\xbf\x00\xf3\x9c' '\x51\xdd\x44\x66' \
463
'\x79\xf5\xe4\x9d' '\x41\x8b\x95\xa2' \
464
'\xce\x1d\xc4\x84' '\x21\x9c\x3f\x73' \
465
'\x1c\x4c\x01\x00' '\x00\x00\x00\x00'
469
bin = apply(event.ConfigureNotify._fields.to_binary, (), self.evt_args_0)
471
assert bin == self.evt_bin_0
472
except AssertionError:
473
raise AssertionError(tohex(bin))
475
def testUnpack0(self):
476
args, remain = event.ConfigureNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
478
assert len(remain) == 0
479
except AssertionError:
480
raise AssertionError(tohex(remain))
482
assert args == self.evt_args_0
483
except AssertionError:
484
raise AssertionError(args)
487
class TestConfigureRequest(unittest.TestCase):
490
'sequence_number': 31377,
493
'border_width': 54779,
496
'window': 1231046739,
499
'sibling': 1154714518,
503
self.evt_bin_0 = '\x9c\xc7\x7a\x91' '\x0a\x88\x6e\xad' \
504
'\x49\x60\x48\x53' '\x44\xd3\x8b\x96' \
505
'\xb8\xf1\xbb\x01' '\xc9\xa4\xb7\xf6' \
506
'\xd5\xfb\x4b\x91' '\x00\x00\x00\x00'
510
bin = apply(event.ConfigureRequest._fields.to_binary, (), self.evt_args_0)
512
assert bin == self.evt_bin_0
513
except AssertionError:
514
raise AssertionError(tohex(bin))
516
def testUnpack0(self):
517
args, remain = event.ConfigureRequest._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
519
assert len(remain) == 0
520
except AssertionError:
521
raise AssertionError(tohex(remain))
523
assert args == self.evt_args_0
524
except AssertionError:
525
raise AssertionError(args)
528
class TestGravityNotify(unittest.TestCase):
531
'sequence_number': 43376,
538
self.evt_bin_0 = '\xc0\x00\xa9\x70' '\x26\x3d\x12\xa5' \
539
'\x03\x14\xd8\x1a' '\xaa\x5c\xec\xfe' \
540
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
541
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
545
bin = apply(event.GravityNotify._fields.to_binary, (), self.evt_args_0)
547
assert bin == self.evt_bin_0
548
except AssertionError:
549
raise AssertionError(tohex(bin))
551
def testUnpack0(self):
552
args, remain = event.GravityNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
554
assert len(remain) == 0
555
except AssertionError:
556
raise AssertionError(tohex(remain))
558
assert args == self.evt_args_0
559
except AssertionError:
560
raise AssertionError(args)
563
class TestResizeRequest(unittest.TestCase):
567
'sequence_number': 21348,
569
'window': 1698104652,
572
self.evt_bin_0 = '\x95\x00\x53\x64' '\x65\x37\x05\x4c' \
573
'\xa2\x16\xe9\x68' '\x00\x00\x00\x00' \
574
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
575
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
579
bin = apply(event.ResizeRequest._fields.to_binary, (), self.evt_args_0)
581
assert bin == self.evt_bin_0
582
except AssertionError:
583
raise AssertionError(tohex(bin))
585
def testUnpack0(self):
586
args, remain = event.ResizeRequest._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
588
assert len(remain) == 0
589
except AssertionError:
590
raise AssertionError(tohex(remain))
592
assert args == self.evt_args_0
593
except AssertionError:
594
raise AssertionError(args)
597
class TestPropertyNotify(unittest.TestCase):
601
'sequence_number': 29670,
607
self.evt_bin_0 = '\xbc\x00\x73\xe6' '\x13\xee\x02\xd8' \
608
'\x2d\x74\x24\x38' '\x6a\xc2\x4b\x25' \
609
'\xb5\x00\x00\x00' '\x00\x00\x00\x00' \
610
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
614
bin = apply(event.PropertyNotify._fields.to_binary, (), self.evt_args_0)
616
assert bin == self.evt_bin_0
617
except AssertionError:
618
raise AssertionError(tohex(bin))
620
def testUnpack0(self):
621
args, remain = event.PropertyNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
623
assert len(remain) == 0
624
except AssertionError:
625
raise AssertionError(tohex(remain))
627
assert args == self.evt_args_0
628
except AssertionError:
629
raise AssertionError(args)
632
class TestSelectionClear(unittest.TestCase):
636
'sequence_number': 13691,
641
self.evt_bin_0 = '\xaa\x00\x35\x7b' '\x22\x74\xca\x43' \
642
'\x15\x29\x7a\x26' '\x52\x94\x54\x73' \
643
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
644
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
648
bin = apply(event.SelectionClear._fields.to_binary, (), self.evt_args_0)
650
assert bin == self.evt_bin_0
651
except AssertionError:
652
raise AssertionError(tohex(bin))
654
def testUnpack0(self):
655
args, remain = event.SelectionClear._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
657
assert len(remain) == 0
658
except AssertionError:
659
raise AssertionError(tohex(remain))
661
assert args == self.evt_args_0
662
except AssertionError:
663
raise AssertionError(args)
666
class TestSelectionRequest(unittest.TestCase):
669
'sequence_number': 13254,
671
'property': 397160681,
674
'target': 1312534659,
675
'selection': 1972323175,
676
'requestor': 178195168,
678
self.evt_bin_0 = '\xa2\x00\x33\xc6' '\x44\xd2\x57\x9a' \
679
'\x7b\xba\xc5\x57' '\x0a\x9f\x0a\xe0' \
680
'\x75\x8f\x43\x67' '\x4e\x3b\xb0\x83' \
681
'\x17\xac\x30\xe9' '\x00\x00\x00\x00'
685
bin = apply(event.SelectionRequest._fields.to_binary, (), self.evt_args_0)
687
assert bin == self.evt_bin_0
688
except AssertionError:
689
raise AssertionError(tohex(bin))
691
def testUnpack0(self):
692
args, remain = event.SelectionRequest._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
694
assert len(remain) == 0
695
except AssertionError:
696
raise AssertionError(tohex(remain))
698
assert args == self.evt_args_0
699
except AssertionError:
700
raise AssertionError(args)
703
class TestSelectionNotify(unittest.TestCase):
706
'sequence_number': 39736,
708
'property': 302372755,
710
'target': 2131462701,
711
'selection': 781895626,
712
'requestor': 1242076588,
714
self.evt_bin_0 = '\xc7\x00\x9b\x38' '\x34\x95\x2f\x5e' \
715
'\x4a\x08\x95\xac' '\x2e\x9a\xc7\xca' \
716
'\x7f\x0b\x8a\x2d' '\x12\x05\xd7\x93' \
717
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
721
bin = apply(event.SelectionNotify._fields.to_binary, (), self.evt_args_0)
723
assert bin == self.evt_bin_0
724
except AssertionError:
725
raise AssertionError(tohex(bin))
727
def testUnpack0(self):
728
args, remain = event.SelectionNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
730
assert len(remain) == 0
731
except AssertionError:
732
raise AssertionError(tohex(remain))
734
assert args == self.evt_args_0
735
except AssertionError:
736
raise AssertionError(args)
739
class TestColormapNotify(unittest.TestCase):
743
'sequence_number': 62902,
744
'colormap': 300799750,
746
'window': 1591667531,
749
self.evt_bin_0 = '\xe9\x00\xf5\xb6' '\x5e\xde\xeb\x4b' \
750
'\x11\xed\xd7\x06' '\x01\xd1\x00\x00' \
751
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
752
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
756
bin = apply(event.ColormapNotify._fields.to_binary, (), self.evt_args_0)
758
assert bin == self.evt_bin_0
759
except AssertionError:
760
raise AssertionError(tohex(bin))
762
def testUnpack0(self):
763
args, remain = event.ColormapNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
765
assert len(remain) == 0
766
except AssertionError:
767
raise AssertionError(tohex(remain))
769
assert args == self.evt_args_0
770
except AssertionError:
771
raise AssertionError(args)
774
class TestClientMessage(unittest.TestCase):
777
'sequence_number': 48712,
778
'data': (8, '01234567890123456789'),
780
'client_type': 1340394836,
781
'window': 1256861040,
783
self.evt_bin_0 = '\xf5\x08\xbe\x48' '\x4a\xea\x2d\x70' \
784
'\x4f\xe4\xcd\x54' '\x30\x31\x32\x33' \
785
'\x34\x35\x36\x37' '\x38\x39\x30\x31' \
786
'\x32\x33\x34\x35' '\x36\x37\x38\x39'
789
'sequence_number': 62804,
790
'data': (16, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]),
792
'client_type': 214585025,
795
self.evt_bin_1 = '\xfa\x10\xf5\x54' '\x09\x05\x12\x6a' \
796
'\x0c\xca\x4e\xc1' '\x00\x01\x00\x02' \
797
'\x00\x03\x00\x04' '\x00\x05\x00\x06' \
798
'\x00\x07\x00\x08' '\x00\x09\x00\x0a'
801
'sequence_number': 3122,
802
'data': (32, [1, 2, 3, 4, 5]),
804
'client_type': 698151018,
807
self.evt_bin_2 = '\xf3\x20\x0c\x32' '\x2b\x39\x0d\xcb' \
808
'\x29\x9c\xf0\x6a' '\x00\x00\x00\x01' \
809
'\x00\x00\x00\x02' '\x00\x00\x00\x03' \
810
'\x00\x00\x00\x04' '\x00\x00\x00\x05'
814
bin = apply(event.ClientMessage._fields.to_binary, (), self.evt_args_0)
816
assert bin == self.evt_bin_0
817
except AssertionError:
818
raise AssertionError(tohex(bin))
820
def testUnpack0(self):
821
args, remain = event.ClientMessage._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
823
assert len(remain) == 0
824
except AssertionError:
825
raise AssertionError(tohex(remain))
827
assert args == self.evt_args_0
828
except AssertionError:
829
raise AssertionError(args)
832
bin = apply(event.ClientMessage._fields.to_binary, (), self.evt_args_1)
834
assert bin == self.evt_bin_1
835
except AssertionError:
836
raise AssertionError(tohex(bin))
838
def testUnpack1(self):
839
args, remain = event.ClientMessage._fields.parse_binary(self.evt_bin_1, dummy_display, 1)
841
assert len(remain) == 0
842
except AssertionError:
843
raise AssertionError(tohex(remain))
845
assert args == self.evt_args_1
846
except AssertionError:
847
raise AssertionError(args)
850
bin = apply(event.ClientMessage._fields.to_binary, (), self.evt_args_2)
852
assert bin == self.evt_bin_2
853
except AssertionError:
854
raise AssertionError(tohex(bin))
856
def testUnpack2(self):
857
args, remain = event.ClientMessage._fields.parse_binary(self.evt_bin_2, dummy_display, 1)
859
assert len(remain) == 0
860
except AssertionError:
861
raise AssertionError(tohex(remain))
863
assert args == self.evt_args_2
864
except AssertionError:
865
raise AssertionError(args)
868
class TestMappingNotify(unittest.TestCase):
871
'sequence_number': 53541,
875
'first_keycode': 218,
877
self.evt_bin_0 = '\xfc\x00\xd1\x25' '\x8d\xda\x97\x00' \
878
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
879
'\x00\x00\x00\x00' '\x00\x00\x00\x00' \
880
'\x00\x00\x00\x00' '\x00\x00\x00\x00'
884
bin = apply(event.MappingNotify._fields.to_binary, (), self.evt_args_0)
886
assert bin == self.evt_bin_0
887
except AssertionError:
888
raise AssertionError(tohex(bin))
890
def testUnpack0(self):
891
args, remain = event.MappingNotify._fields.parse_binary(self.evt_bin_0, dummy_display, 1)
893
assert len(remain) == 0
894
except AssertionError:
895
raise AssertionError(tohex(remain))
897
assert args == self.evt_args_0
898
except AssertionError:
899
raise AssertionError(args)
902
if __name__ == "__main__":