Skip to content

Commit a5f2761

Browse files
Run black(1) on the UnitaryTests/*.py files
1 parent 3f02259 commit a5f2761

33 files changed

+432
-267
lines changed

UnitaryTests/CheckAutoPowerOff.py

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@
1919

2020
# check the card is not auto powered off after a SCardReconnect()
2121

22-
from smartcard.scard import *
23-
from smartcard.pcsc.PCSCExceptions import *
2422
import sys
2523
import time
24+
from smartcard.scard import *
25+
from smartcard.pcsc.PCSCExceptions import *
2626

2727

2828
RED = "\033[0;31m"
@@ -36,14 +36,15 @@
3636
hresult, readers = SCardListReaders(hcontext, [])
3737
if hresult != SCARD_S_SUCCESS:
3838
raise ListReadersException(hresult)
39-
print('PC/SC Readers:', readers)
39+
print("PC/SC Readers:", readers)
4040

4141
reader = readers[0]
4242
print("Using reader:", reader)
4343

4444
# Connect in SCARD_SHARE_SHARED mode
45-
hresult, hcard, dwActiveProtocol = SCardConnect(hcontext, reader,
46-
SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY)
45+
hresult, hcard, dwActiveProtocol = SCardConnect(
46+
hcontext, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY
47+
)
4748
if hresult != SCARD_S_SUCCESS:
4849
raise BaseSCardException(hresult)
4950

@@ -54,8 +55,9 @@
5455
if hresult == SCARD_W_REMOVED_CARD:
5556
print("\nInsert the card")
5657
while hresult != SCARD_S_SUCCESS:
57-
hresult, dwActiveProtocol = SCardReconnect(hcard,
58-
SCARD_SHARE_EXCLUSIVE, SCARD_PROTOCOL_ANY, SCARD_LEAVE_CARD)
58+
hresult, dwActiveProtocol = SCardReconnect(
59+
hcard, SCARD_SHARE_EXCLUSIVE, SCARD_PROTOCOL_ANY, SCARD_LEAVE_CARD
60+
)
5961
print(".", end="")
6062
sys.stdout.flush()
6163
time.sleep(1)
@@ -65,7 +67,7 @@
6567

6668
if hresult != SCARD_S_SUCCESS:
6769
raise BaseSCardException(hresult)
68-
#print(SCardGetErrorMessage(hresult))
70+
# print(SCardGetErrorMessage(hresult))
6971

7072
print(".", end="")
7173
sys.stdout.flush()
@@ -76,7 +78,7 @@
7678

7779
if count >= 0:
7880
count += 1
79-
if (count > 10):
81+
if count > 10:
8082
print(BLUE + "\nTest passed" + NORMAL)
8183
break
8284
time.sleep(1)

UnitaryTests/FEATURE_CCID_ESC_COMMAND_Gemalto_features.py

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -19,28 +19,35 @@
1919
# with this program; if not, see <http://www.gnu.org/licenses/>.
2020

2121
from smartcard.System import readers
22-
from smartcard.pcsc.PCSCPart10 import (SCARD_SHARE_DIRECT,
23-
SCARD_LEAVE_CARD, FEATURE_CCID_ESC_COMMAND,
24-
FEATURE_GET_TLV_PROPERTIES, getTlvProperties,
25-
getFeatureRequest, hasFeature)
22+
from smartcard.pcsc.PCSCPart10 import (
23+
SCARD_SHARE_DIRECT,
24+
SCARD_LEAVE_CARD,
25+
FEATURE_CCID_ESC_COMMAND,
26+
FEATURE_GET_TLV_PROPERTIES,
27+
getTlvProperties,
28+
getFeatureRequest,
29+
hasFeature,
30+
)
2631
from smartcard.Exceptions import SmartcardException
32+
2733
try:
2834
from itertools import izip
2935
except ImportError:
3036
izip = zip
3137

3238

3339
# http://www.usb.org/developers/docs/USB_LANGIDs.pdf
34-
USBLangID = {0x0409: "English (United States)",
35-
0x040C: "French (Standard)",
36-
0x0425: "Estonian",
37-
0x0419: "Russian",
38-
0x0415: "Polish",
39-
0x0416: "Portuguese (Brazil)",
40-
0x0405: "Czech",
41-
0x040A: "Spanish (Traditional Sort)",
42-
0x041B: "Slovak"
43-
}
40+
USBLangID = {
41+
0x0409: "English (United States)",
42+
0x040C: "French (Standard)",
43+
0x0425: "Estonian",
44+
0x0419: "Russian",
45+
0x0415: "Polish",
46+
0x0416: "Portuguese (Brazil)",
47+
0x0405: "Czech",
48+
0x040A: "Spanish (Traditional Sort)",
49+
0x041B: "Slovak",
50+
}
4451

4552

4653
def test_bit(value, bit):
@@ -49,19 +56,18 @@ def test_bit(value, bit):
4956

5057

5158
def main():
52-
""" main """
59+
"""main"""
5360
card_connection = readers()[0].createConnection()
54-
card_connection.connect(mode=SCARD_SHARE_DIRECT,
55-
disposition=SCARD_LEAVE_CARD)
61+
card_connection.connect(mode=SCARD_SHARE_DIRECT, disposition=SCARD_LEAVE_CARD)
5662

5763
feature_list = getFeatureRequest(card_connection)
5864

5965
get_tlv_properties = hasFeature(feature_list, FEATURE_GET_TLV_PROPERTIES)
6066
if get_tlv_properties:
6167
tlv = getTlvProperties(card_connection)
6268
print("Reader: ", readers()[0])
63-
print("IdVendor: 0x%04X" % tlv['PCSCv2_PART10_PROPERTY_wIdVendor'])
64-
print("IdProduct: 0x%04X" % tlv['PCSCv2_PART10_PROPERTY_wIdProduct'])
69+
print("IdVendor: 0x%04X" % tlv["PCSCv2_PART10_PROPERTY_wIdVendor"])
70+
print("IdProduct: 0x%04X" % tlv["PCSCv2_PART10_PROPERTY_wIdProduct"])
6571

6672
ccid_esc_command = hasFeature(feature_list, FEATURE_CCID_ESC_COMMAND)
6773
if ccid_esc_command is None:
@@ -137,5 +143,6 @@ def main():
137143
print("FirewalledCommand_SW2: 0x%02X" % res[17])
138144
# bytes 18-20 are RFU
139145

146+
140147
if __name__ == "__main__":
141148
main()

UnitaryTests/FEATURE_CCID_ESC_COMMAND_Xiring.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,13 @@
2525
# option of the CCID driver Info.plist file
2626

2727
from smartcard.System import readers
28-
from smartcard.pcsc.PCSCPart10 import (getFeatureRequest, hasFeature,
29-
getTlvProperties, FEATURE_CCID_ESC_COMMAND, SCARD_SHARE_DIRECT)
28+
from smartcard.pcsc.PCSCPart10 import (
29+
getFeatureRequest,
30+
hasFeature,
31+
getTlvProperties,
32+
FEATURE_CCID_ESC_COMMAND,
33+
SCARD_SHARE_DIRECT,
34+
)
3035

3136
# use the first reader
3237
card_connection = readers()[0].createConnection()
@@ -43,18 +48,19 @@
4348
tlv = getTlvProperties(card_connection)
4449

4550
# check we are using a Xiring Leo v1 or v2 reader
46-
if tlv['PCSCv2_PART10_PROPERTY_wIdVendor'] == 0x0F14 \
47-
and (tlv['PCSCv2_PART10_PROPERTY_wIdProduct'] in [0x0037, 0x0038]):
51+
if tlv["PCSCv2_PART10_PROPERTY_wIdVendor"] == 0x0F14 and (
52+
tlv["PCSCv2_PART10_PROPERTY_wIdProduct"] in [0x0037, 0x0038]
53+
):
4854

4955
# proprietary escape command for Xiring Leo readers
5056
version = [ord(c) for c in "VERSION"]
5157
res = card_connection.control(ccid_esc_command, version)
5258
print(res)
53-
print("VERSION:", ''.join([chr(x) for x in res]))
59+
print("VERSION:", "".join([chr(x) for x in res]))
5460

5561
serial = [ord(c) for c in "GET_SN"]
5662
res = card_connection.control(ccid_esc_command, serial)
5763
print(res)
58-
print("GET_SN:", ''.join([chr(x) for x in res]))
64+
print("GET_SN:", "".join([chr(x) for x in res]))
5965
else:
6066
print("Xiring Leo reader not found")

UnitaryTests/FEATURE_GET_TLV_PROPERTIES.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,10 @@
3939
tlv = getTlvProperties(card_connection)
4040

4141
for key in sorted(tlv):
42-
if key in ["PCSCv2_PART10_PROPERTY_wIdProduct",
43-
"PCSCv2_PART10_PROPERTY_wIdVendor"]:
42+
if key in [
43+
"PCSCv2_PART10_PROPERTY_wIdProduct",
44+
"PCSCv2_PART10_PROPERTY_wIdVendor",
45+
]:
4446
print("%s: 0x%04X" % (key, tlv[key]))
4547
else:
4648
print("%s: %s" % (key, tlv[key]))

UnitaryTests/MCT_ReaderDirect.py

Lines changed: 49 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,18 @@
1919
# with this program; if not, see <http://www.gnu.org/licenses/>.
2020

2121
from smartcard.System import readers
22-
from smartcard.pcsc.PCSCPart10 import (SCARD_SHARE_DIRECT,
23-
SCARD_LEAVE_CARD, FEATURE_MCT_READER_DIRECT, getFeatureRequest, hasFeature)
22+
from smartcard.pcsc.PCSCPart10 import (
23+
SCARD_SHARE_DIRECT,
24+
SCARD_LEAVE_CARD,
25+
FEATURE_MCT_READER_DIRECT,
26+
getFeatureRequest,
27+
hasFeature,
28+
)
2429
from smartcard.util import toHexString
2530

2631

2732
def parse_info(bytes):
28-
""" parse the SECODER INFO answer """
33+
"""parse the SECODER INFO answer"""
2934
print("parse the SECODER INFO answer:", toHexString(bytes))
3035

3136
sw = bytes[-2:]
@@ -34,36 +39,34 @@ def parse_info(bytes):
3439
while len(bytes):
3540
tag = bytes[0]
3641
length = bytes[1]
37-
data = bytes[2:2 + length]
42+
data = bytes[2 : 2 + length]
3843

39-
print("tag: %02X, length: %2d:" % (tag, length), end=' ')
44+
print("tag: %02X, length: %2d:" % (tag, length), end=" ")
4045
if tag in [0x40, 0x80, 0x81, 0x83, 0x84]:
41-
print("'%s'" % ''.join([chr(x) for x in data]))
46+
print("'%s'" % "".join([chr(x) for x in data]))
4247
else:
4348
print(toHexString(data))
4449

45-
del bytes[:2 + length]
50+
del bytes[: 2 + length]
4651
print("SW:", toHexString(sw))
4752

4853

4954
def parse_select(bytes):
50-
""" parse the SECODER SELECT APPLICATION answer """
51-
print("parse the SECODER SELECT APPLICATION answer:",
52-
toHexString(bytes))
55+
"""parse the SECODER SELECT APPLICATION answer"""
56+
print("parse the SECODER SELECT APPLICATION answer:", toHexString(bytes))
5357

5458
print("Activation ID:", toHexString(bytes[0:4]))
55-
print("Interface Version: '%s'" % ''.join([chr(x) for x in bytes[5:11]]))
59+
print("Interface Version: '%s'" % "".join([chr(x) for x in bytes[5:11]]))
5660
print("Language Code:", toHexString(bytes[11:15]))
5761
print("CSI:", toHexString(bytes[15:18]))
5862
print("Application Identifier:", toHexString(bytes[18:23]))
5963
print("SW:", toHexString(bytes[23:25]))
6064

6165

6266
def main():
63-
""" main """
67+
"""main"""
6468
card_connection = readers()[0].createConnection()
65-
card_connection.connect(mode=SCARD_SHARE_DIRECT,
66-
disposition=SCARD_LEAVE_CARD)
69+
card_connection.connect(mode=SCARD_SHARE_DIRECT, disposition=SCARD_LEAVE_CARD)
6770

6871
feature_list = getFeatureRequest(card_connection)
6972
# print(getPinProperties(card_connection))
@@ -76,11 +79,40 @@ def main():
7679
res = card_connection.control(mct_reader_direct, secoder_info)
7780
parse_info(res)
7881

79-
secoder_select = [0x20, 0x71, 0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0x80,
80-
0x05, 0x31, 0x2E, 0x31, 0x2E, 0x30, 0x84, 0x02, 0x64, 0x65,
81-
0x90, 0x01, 0x01, 0x85, 0x03, ord('g'), ord('k'), ord('p'), 0x00, 0x00]
82+
secoder_select = [
83+
0x20,
84+
0x71,
85+
0x00,
86+
0x00,
87+
0x00,
88+
0x00,
89+
0x14,
90+
0x00,
91+
0x80,
92+
0x05,
93+
0x31,
94+
0x2E,
95+
0x31,
96+
0x2E,
97+
0x30,
98+
0x84,
99+
0x02,
100+
0x64,
101+
0x65,
102+
0x90,
103+
0x01,
104+
0x01,
105+
0x85,
106+
0x03,
107+
ord("g"),
108+
ord("k"),
109+
ord("p"),
110+
0x00,
111+
0x00,
112+
]
82113
res = card_connection.control(mct_reader_direct, secoder_select)
83114
parse_select(res)
84115

116+
85117
if __name__ == "__main__":
86118
main()

UnitaryTests/SCardBeginTransaction_Disconnect.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,13 @@
3131
hresult, readers = SCardListReaders(hcontext, [])
3232
if hresult != SCARD_S_SUCCESS:
3333
raise ListReadersException(hresult)
34-
print('PC/SC Readers:', readers)
34+
print("PC/SC Readers:", readers)
3535
reader = readers[0]
3636
print("Using reader:", reader)
3737

38-
hresult, hcard, dwActiveProtocol = SCardConnect(hcontext, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY)
38+
hresult, hcard, dwActiveProtocol = SCardConnect(
39+
hcontext, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY
40+
)
3941
if hresult != SCARD_S_SUCCESS:
4042
raise BaseSCardException(hresult)
4143

UnitaryTests/SCardBeginTransaction_ExclusiceMode.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,19 +29,23 @@
2929
hresult, readers = SCardListReaders(hcontext1, [])
3030
if hresult != SCARD_S_SUCCESS:
3131
raise ListReadersException(hresult)
32-
print('PC/SC Readers:', readers)
32+
print("PC/SC Readers:", readers)
3333
reader = readers[0]
3434
print("Using reader:", reader)
3535

3636
hresult, hcontext2 = SCardEstablishContext(SCARD_SCOPE_USER)
3737
if hresult != SCARD_S_SUCCESS:
3838
raise EstablishContextException(hresult)
3939

40-
hresult, hcard1, dwActiveProtocol = SCardConnect(hcontext1, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY)
40+
hresult, hcard1, dwActiveProtocol = SCardConnect(
41+
hcontext1, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY
42+
)
4143
if hresult != SCARD_S_SUCCESS:
4244
raise BaseSCardException(hresult)
4345

44-
hresult, hcard2, dwActiveProtocol = SCardConnect(hcontext1, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY)
46+
hresult, hcard2, dwActiveProtocol = SCardConnect(
47+
hcontext1, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY
48+
)
4549
if hresult != SCARD_S_SUCCESS:
4650
raise BaseSCardException(hresult)
4751

@@ -64,7 +68,9 @@
6468

6569
# Connect should not return an error since hcard1 and hcard2 are now
6670
# disconnected
67-
hresult, hcard1, dwActiveProtocol = SCardConnect(hcontext1, reader, SCARD_SHARE_EXCLUSIVE, SCARD_PROTOCOL_ANY)
71+
hresult, hcard1, dwActiveProtocol = SCardConnect(
72+
hcontext1, reader, SCARD_SHARE_EXCLUSIVE, SCARD_PROTOCOL_ANY
73+
)
6874
if hresult != SCARD_S_SUCCESS:
6975
raise BaseSCardException(hresult)
7076

UnitaryTests/SCardBeginTransaction_Reset.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,19 +30,23 @@
3030
hresult, readers = SCardListReaders(hcontext1, [])
3131
if hresult != SCARD_S_SUCCESS:
3232
raise ListReadersException(hresult)
33-
print('PC/SC Readers:', readers)
33+
print("PC/SC Readers:", readers)
3434
reader = readers[0]
3535
print("Using reader:", reader)
3636

3737
hresult, hcontext2 = SCardEstablishContext(SCARD_SCOPE_USER)
3838
if hresult != SCARD_S_SUCCESS:
3939
raise EstablishContextException(hresult)
4040

41-
hresult, hcard1, dwActiveProtocol = SCardConnect(hcontext1, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY)
41+
hresult, hcard1, dwActiveProtocol = SCardConnect(
42+
hcontext1, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY
43+
)
4244
if hresult != SCARD_S_SUCCESS:
4345
raise BaseSCardException(hresult)
4446

45-
hresult, hcard2, dwActiveProtocol = SCardConnect(hcontext1, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY)
47+
hresult, hcard2, dwActiveProtocol = SCardConnect(
48+
hcontext1, reader, SCARD_SHARE_SHARED, SCARD_PROTOCOL_ANY
49+
)
4650
if hresult != SCARD_S_SUCCESS:
4751
raise BaseSCardException(hresult)
4852

0 commit comments

Comments
 (0)