Skip to content

Commit fab1249

Browse files
committed
Passes pre-commit checks
1 parent 183ec01 commit fab1249

File tree

3 files changed

+68
-38
lines changed

3 files changed

+68
-38
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,6 @@ _build
4646
.idea
4747
.vscode
4848
*~
49+
50+
# Test coverage reports
51+
.coverage

.reuse/dep5

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
2+
Upstream-Name: Adafruit_CircuitPython_miniQR
3+
Source: https://github.com/adafruit/Adafruit_CircuitPython_miniQR
4+
5+
Files: tests/*.gild
6+
Copyright: 2019 Translation Company
7+
License: Unlicense

tests/unit.py

Lines changed: 58 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,81 +1,101 @@
1+
# SPDX-FileCopyrightText: 2024 James Bowman
2+
#
3+
# SPDX-License-Identifier: MIT
4+
15
import sys
26
import unittest
37
import random
48

59
sys.path.append(".")
610

11+
# pylint: disable=C0413
712
import adafruit_miniqr
813

9-
def enc(msg, args = {}):
10-
qr = adafruit_miniqr.QRCode(**args)
11-
qr.add_data(msg)
12-
qr.make()
13-
return qr.matrix
1414

15-
class TestMiniQR(unittest.TestCase):
15+
def enc(msg, **args):
16+
_q = adafruit_miniqr.QRCode(**args)
17+
_q.add_data(msg)
18+
_q.make()
19+
return _q.matrix
20+
1621

22+
class TestMiniQR(unittest.TestCase):
1723
def test_example(self):
1824
# Confirm the simple test that is in the docs
19-
msg = b'https://www.adafruit.com'
20-
qr = adafruit_miniqr.QRCode()
21-
qr.add_data(msg)
22-
qr.make()
23-
with open("tests/test_example.gild") as f:
24-
self.assertEqual(f.read(), repr(qr.matrix))
25+
msg = b"https://www.adafruit.com"
26+
_qr = adafruit_miniqr.QRCode()
27+
_qr.add_data(msg)
28+
_qr.make()
29+
with open("tests/test_example.gild") as _f:
30+
self.assertEqual(_f.read(), repr(_qr.matrix))
2531

2632
def test_qr_type(self):
2733
# Confirm that qr_type 1-9 increases the matrix size
2834
expected_size = [None, 21, 25, 29, 33, 37, 41, 45, 49, 53]
29-
for t in range(1, 10):
30-
m = enc(b'abc', dict(qr_type = t))
31-
self.assertEqual(m.width, m.height)
32-
self.assertEqual(m.width, expected_size[t])
35+
for _t in range(1, 10):
36+
_m = enc(b"abc", qr_type=_t)
37+
self.assertEqual(_m.width, _m.height)
38+
self.assertEqual(_m.width, expected_size[_t])
3339

3440
def test_qr_error_correct(self):
3541
# Confirm that error correct L,M,Q,H give different matrix
3642
matrices = set()
37-
for ec in adafruit_miniqr.L, adafruit_miniqr.M, adafruit_miniqr.Q, adafruit_miniqr.H:
38-
m = enc(b'abc', dict(error_correct = ec))
39-
matrices.add(m)
43+
for _ec in (
44+
adafruit_miniqr.L,
45+
adafruit_miniqr.M,
46+
adafruit_miniqr.Q,
47+
adafruit_miniqr.H,
48+
):
49+
_m = enc(b"abc", error_correct=_ec)
50+
matrices.add(_m)
4051
self.assertEqual(len(matrices), 4) # All 4 are unique
4152

4253
def test_qr_pattern_mask(self):
4354
# Confirm that pattern_mask 0-7 gives different matrix
4455
matrices = set()
45-
qr = adafruit_miniqr.QRCode()
46-
qr.add_data('test_qr_pattern_mask/1Z')
47-
for m in range(8):
48-
qr.make(mask_pattern = m)
49-
matrices.add(tuple(qr.matrix.buffer))
56+
_qr = adafruit_miniqr.QRCode()
57+
_qr.add_data("test_qr_pattern_mask/1Z")
58+
for _m in range(8):
59+
_qr.make(mask_pattern=_m)
60+
matrices.add(tuple(_qr.matrix.buffer))
5061
self.assertEqual(len(matrices), 8) # All 8 are unique
5162

5263
def test_qr_auto(self):
5364
# Confirm that increasing message size increases the matrix size monotonically
5465
sizes = []
55-
for i in range(14): # XXX size 41 crashes
56-
m = enc(b'aBc!1234' * i)
57-
sizes.append(m.width)
66+
for i in range(14): # size 41 crashes
67+
_m = enc(b"aBc!1234" * i)
68+
sizes.append(_m.width)
5869
self.assertTrue(len(set(sizes)) > 1)
5970
self.assertEqual(sizes, sorted(sizes))
6071

6172
def test_qr_str(self):
6273
# Confirm that bytes and str give the same result
63-
for s in ("", "abc", "https://www.adafruit.com", "AbCd12"):
64-
a = enc(s.encode(), {})
65-
b = enc(s, {})
66-
self.assertEqual(a.buffer, b.buffer)
74+
for _s in ("", "abc", "https://www.adafruit.com", "AbCd12"):
75+
_a = enc(_s.encode())
76+
_b = enc(_s)
77+
self.assertEqual(_a.buffer, _b.buffer)
6778

6879
def test_qr_all(self):
69-
for type in range(1, 10):
70-
for ec in adafruit_miniqr.L, adafruit_miniqr.M, adafruit_miniqr.Q, adafruit_miniqr.H:
71-
qr = adafruit_miniqr.QRCode(qr_type = type, error_correct = ec)
72-
qr.add_data('abc')
73-
for m in range(8):
74-
qr.make(mask_pattern = m)
80+
for _ty in range(1, 10):
81+
for _ec in (
82+
adafruit_miniqr.L,
83+
adafruit_miniqr.M,
84+
adafruit_miniqr.Q,
85+
adafruit_miniqr.H,
86+
):
87+
_qr = adafruit_miniqr.QRCode(qr_type=_ty, error_correct=_ec)
88+
_qr.add_data("abc")
89+
for _m in range(8):
90+
_qr.matrix = None
91+
_qr.make(mask_pattern=_m)
92+
self.assertTrue(_qr.matrix is not None)
7593

7694
def test_qr_maximum(self):
7795
msg = bytes([random.randrange(32, 127) for i in range(230)])
78-
m = enc(msg, dict(qr_type = 9))
96+
_a = enc(msg, qr_type=9)
97+
self.assertTrue(_a is not None)
98+
7999

80100
if __name__ == "__main__":
81101
unittest.main()

0 commit comments

Comments
 (0)