Mercurial > hgrepos > Python > apps > py-cutils
annotate tests/test_crc32.py @ 357:7f797d71bd5e
Add SPDX license tags to unittest scripts
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Wed, 02 Apr 2025 14:05:03 +0200 |
| parents | 1181d8cb4846 |
| children |
| 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 -*- |
|
357
7f797d71bd5e
Add SPDX license tags to unittest scripts
Franz Glasner <fzglas.hg@dom66.de>
parents:
257
diff
changeset
|
2 # :- |
|
7f797d71bd5e
Add SPDX license tags to unittest scripts
Franz Glasner <fzglas.hg@dom66.de>
parents:
257
diff
changeset
|
3 # SPDX-FileCopyrightText: © 2025 Franz Glasner |
|
7f797d71bd5e
Add SPDX license tags to unittest scripts
Franz Glasner <fzglas.hg@dom66.de>
parents:
257
diff
changeset
|
4 # SPDX-License-Identifier: BSD-3-Clause |
|
7f797d71bd5e
Add SPDX license tags to unittest scripts
Franz Glasner <fzglas.hg@dom66.de>
parents:
257
diff
changeset
|
5 # :- |
|
255
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
6 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
|
7 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
8 """ |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
9 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
10 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
|
11 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
12 import struct |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
13 import sys |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
14 import unittest |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
15 import zlib |
|
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 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
|
18 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
19 import cutils.util.crc32 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
20 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
21 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
22 class TestCRC32(unittest.TestCase): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
23 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
24 def test_empty(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
25 c1 = cutils.util.crc32.crc32() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
26 c2 = zlib.crc32(b"") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
27 self.assertEqual(c1._crc, c2) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
28 self.assertEqual("00000000", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
29 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
|
30 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
31 def test_uint32(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
32 c1 = cutils.util.crc32.crc32() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
33 c1._crc = 0xffffffff |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
34 self.assertEqual("FFFFFFFF", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
35 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
|
36 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
37 @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
|
38 def test_negative_minus_one(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
39 # 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
|
40 c1 = cutils.util.crc32.crc32() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
41 c1._crc = -1 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
42 self.assertEqual("FFFFFFFF", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
43 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
|
44 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
45 def test_postitive_asd(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
46 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
|
47 c2 = zlib.crc32(b"") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
48 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
|
49 self.assertEqual(c1._crc, c2) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
50 self.assertEqual(355327694, c1._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
51 self.assertEqual("152DDECE", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
52 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
|
53 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
54 def test_negative_123456789(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
55 c1 = cutils.util.crc32.crc32() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
56 c1.update(b"123456789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
57 c2 = zlib.crc32(b"123456789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
58 self.assertEqual(c1._crc, c2) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
59 self.assertEqual("CBF43926", c1.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
60 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
|
61 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
62 def test_copy(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
63 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
|
64 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
65 self.assertEqual(c1._crc, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
66 self.assertEqual("CBF43926", c2.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
67 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
68 def test_copy_parts(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
69 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
|
70 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
71 c2.update(b"6789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
72 self.assertEqual("CBF43926", c2.hexdigest()) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
73 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
74 def test_equality(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
75 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
|
76 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
77 c3 = zlib.crc32(b"123") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
78 self.assertEqual(c2, c1) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
79 self.assertEqual(c1, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
80 self.assertEqual(c1, c3) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
81 self.assertNotEqual(c1, None) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
82 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
83 def test_equality_2(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
84 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
|
85 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
86 c3 = zlib.crc32(b"123456789") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
87 self.assertEqual(c2, c1) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
88 self.assertEqual(c1, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
89 self.assertEqual(c1, c3) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
90 self.assertNotEqual(c1, None) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
91 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
92 def test_inequality(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
93 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
|
94 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
95 c1.update(b"4") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
96 c3 = zlib.crc32(b"12345") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
97 self.assertNotEqual(c2, c1) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
98 self.assertNotEqual(c1, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
99 self.assertNotEqual(c1, c3) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
100 self.assertNotEqual(c1, None) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
101 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
102 def test_inequality_2(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
103 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
|
104 c2 = c1.copy() |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
105 c2.update(b"9") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
106 c3 = zlib.crc32(b"1234567") |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
107 self.assertNotEqual(c2, c1) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
108 self.assertNotEqual(c1, c2._crc) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
109 self.assertNotEqual(c1, c3) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
110 self.assertNotEqual(c1, None) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
111 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
112 def test_equality_negative_number(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
113 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
|
114 # Py2 yields signed ints |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
115 self.assertEqual(c1, -873187034) |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
116 # Py3 yields unsigned ints |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
117 self.assertEqual(c1, 3421780262) |
|
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_as_uint32(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
120 self.assertEqual(3421780262, |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
121 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
|
122 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
123 def test_struct_pack(self): |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
124 self.assertEqual( |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
125 struct.pack(">I", 3421780262), |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
126 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
|
127 self.assertEqual( |
|
1181d8cb4846
Tests: add a tests for the 32-bit border
Franz Glasner <fzglas.hg@dom66.de>
parents:
255
diff
changeset
|
128 struct.pack(">i", -2147483648), |
|
1181d8cb4846
Tests: add a tests for the 32-bit border
Franz Glasner <fzglas.hg@dom66.de>
parents:
255
diff
changeset
|
129 struct.pack(">I", 0x80000000)) |
|
255
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
130 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
131 |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
132 if __name__ == "__main__": |
|
d852559df523
Wrap zlib.crc32 into a hashlib-compatible interface
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
133 unittest.main() |
