Mercurial > hgrepos > Python > apps > py-cutils
annotate tests/test_crc32.py @ 257:1181d8cb4846
Tests: add a tests for the 32-bit border
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Sun, 16 Feb 2025 09:30:23 +0100 |
| parents | d852559df523 |
| children | 7f797d71bd5e |
| rev | line source |
|---|---|
|
255
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
1 # -*- coding: utf-8 -*- |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
2 r"""Unit tests for the vendored crcmod2 package. |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
3 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
4 """ |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
5 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
6 from __future__ import absolute_import, print_function |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
7 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
8 import struct |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
9 import sys |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
10 import unittest |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
11 import zlib |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
12 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
13 import _test_setup # noqa: F401 imported but unused |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
14 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
15 import cutils.util.crc32 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
16 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
17 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
18 class TestCRC32(unittest.TestCase): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
19 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
20 def test_empty(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
21 c1 = cutils.util.crc32.crc32() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
22 c2 = zlib.crc32(b"") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
23 self.assertEqual(c1._crc, c2) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
24 self.assertEqual("00000000", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
25 self.assertEqual(b"\x00\x00\x00\x00", c1.digest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
26 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
27 def test_uint32(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
28 c1 = cutils.util.crc32.crc32() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
29 c1._crc = 0xffffffff |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
30 self.assertEqual("FFFFFFFF", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
31 self.assertEqual(b"\xff\xff\xff\xff", c1.digest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
32 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
33 @unittest.skipIf(sys.version_info[0] >= 3, "Only for Python 2") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
34 def test_negative_minus_one(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
35 # Python2 yields negative numbers in zlib.crc32() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
36 c1 = cutils.util.crc32.crc32() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
37 c1._crc = -1 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
38 self.assertEqual("FFFFFFFF", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
39 self.assertEqual(b"\xff\xff\xff\xff", c1.digest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
40 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
41 def test_postitive_asd(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
42 c1 = cutils.util.crc32.crc32(b"asd\n") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
43 c2 = zlib.crc32(b"") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
44 c2 = zlib.crc32(b"asd\n", c2) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
45 self.assertEqual(c1._crc, c2) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
46 self.assertEqual(355327694, c1._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
47 self.assertEqual("152DDECE", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
48 self.assertEqual(b"\x15\x2d\xde\xce", c1.digest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
49 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
50 def test_negative_123456789(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
51 c1 = cutils.util.crc32.crc32() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
52 c1.update(b"123456789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
53 c2 = zlib.crc32(b"123456789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
54 self.assertEqual(c1._crc, c2) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
55 self.assertEqual("CBF43926", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
56 self.assertEqual(b"\xcb\xf4\x39\x26", c1.digest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
57 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
58 def test_copy(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
59 c1 = cutils.util.crc32.crc32(b"123456789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
60 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
61 self.assertEqual(c1._crc, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
62 self.assertEqual("CBF43926", c2.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
63 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
64 def test_copy_parts(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
65 c1 = cutils.util.crc32.crc32(b"12345") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
66 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
67 c2.update(b"6789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
68 self.assertEqual("CBF43926", c2.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
69 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
70 def test_equality(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
71 c1 = cutils.util.crc32.crc32(b"123") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
72 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
73 c3 = zlib.crc32(b"123") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
74 self.assertEqual(c2, c1) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
75 self.assertEqual(c1, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
76 self.assertEqual(c1, c3) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
77 self.assertNotEqual(c1, None) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
78 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
79 def test_equality_2(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
80 c1 = cutils.util.crc32.crc32(b"123456789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
81 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
82 c3 = zlib.crc32(b"123456789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
83 self.assertEqual(c2, c1) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
84 self.assertEqual(c1, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
85 self.assertEqual(c1, c3) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
86 self.assertNotEqual(c1, None) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
87 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
88 def test_inequality(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
89 c1 = cutils.util.crc32.crc32(b"123") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
90 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
91 c1.update(b"4") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
92 c3 = zlib.crc32(b"12345") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
93 self.assertNotEqual(c2, c1) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
94 self.assertNotEqual(c1, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
95 self.assertNotEqual(c1, c3) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
96 self.assertNotEqual(c1, None) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
97 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
98 def test_inequality_2(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
99 c1 = cutils.util.crc32.crc32(b"12345678") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
100 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
101 c2.update(b"9") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
102 c3 = zlib.crc32(b"1234567") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
103 self.assertNotEqual(c2, c1) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
104 self.assertNotEqual(c1, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
105 self.assertNotEqual(c1, c3) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
106 self.assertNotEqual(c1, None) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
107 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
108 def test_equality_negative_number(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
109 c1 = cutils.util.crc32.crc32(b"123456789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
110 # Py2 yields signed ints |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
111 self.assertEqual(c1, -873187034) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
112 # Py3 yields unsigned ints |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
113 self.assertEqual(c1, 3421780262) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
114 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
115 def test_as_uint32(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
116 self.assertEqual(3421780262, |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
117 cutils.util.crc32.crc32.as_uint32(-873187034)) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
118 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
119 def test_struct_pack(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
120 self.assertEqual( |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
121 struct.pack(">I", 3421780262), |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
122 struct.pack(">i", -873187034)) |
|
257
1181d8cb4846
Tests: add a tests for the 32-bit border
Franz Glasner <fzglas.hg@dom66.de>
parents:
255
diff
changeset
|
123 self.assertEqual( |
|
1181d8cb4846
Tests: add a tests for the 32-bit border
Franz Glasner <fzglas.hg@dom66.de>
parents:
255
diff
changeset
|
124 struct.pack(">i", -2147483648), |
|
1181d8cb4846
Tests: add a tests for the 32-bit border
Franz Glasner <fzglas.hg@dom66.de>
parents:
255
diff
changeset
|
125 struct.pack(">I", 0x80000000)) |
|
255
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
126 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
127 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
128 if __name__ == "__main__": |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
129 unittest.main() |
