Skip to content

Commit 8a37f52

Browse files
committed
tests: adapted tests
1 parent 670bd33 commit 8a37f52

File tree

3 files changed

+78
-5
lines changed

3 files changed

+78
-5
lines changed

pymdoccbor/tests/micov_data.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
MICOV_DATA = {
2+
"org.micov.medical.1":{
3+
"last_name": "Rossi",
4+
"given_name": "Mario",
5+
"birth_date": "1922-03-13",
6+
"PersonId_nic": {
7+
"PersonIdNumber": "1234567890",
8+
"PersonIdType": "nic",
9+
"PersonIdIS": "IT",
10+
},
11+
"sex": 1,
12+
"VPInfo_COVID-19_1": {
13+
"VaccineProphylaxis": "",
14+
"VaccMedicinalProd": "Moderna",
15+
"VaccMktAuthHolder": "Moderna",
16+
"VaccDoseNumber": "2/2",
17+
"VaccAdmDate": "2021-01-01",
18+
"VaccCountry": "IT",
19+
},
20+
"CertIssuer": "Italian Ministry of Health",
21+
"CertId": "1234567890",
22+
}
23+
}

pymdoccbor/tests/test_02_mdoc_issuer.py

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import cbor2
22
import os
3-
43
from pycose.messages import Sign1Message
54

65
from pymdoccbor.mdoc.issuer import MdocCborIssuer
@@ -21,10 +20,20 @@
2120
def test_mso_writer():
2221
msoi = MsoIssuer(
2322
data=PID_DATA,
24-
private_key=PKEY
23+
private_key=PKEY,
24+
validity={
25+
"issuance_date": "2024-12-31",
26+
"expiry_date": "2050-12-31"
27+
},
28+
alg="ES256"
2529
)
2630

27-
# TODO: assertion here about msow.hash_map and msow.disclosure_map
31+
assert "eu.europa.ec.eudiw.pid.1" in msoi.hash_map
32+
assert msoi.hash_map["eu.europa.ec.eudiw.pid.1"]
33+
34+
assert "eu.europa.ec.eudiw.pid.1" in msoi.disclosure_map
35+
assert msoi.disclosure_map["eu.europa.ec.eudiw.pid.1"]
36+
assert msoi.disclosure_map["eu.europa.ec.eudiw.pid.1"].values().__len__() == PID_DATA["eu.europa.ec.eudiw.pid.1"].values().__len__()
2837

2938
mso = msoi.sign()
3039

@@ -36,13 +45,18 @@ def test_mso_writer():
3645

3746
def test_mdoc_issuer():
3847
mdoci = MdocCborIssuer(
39-
private_key=PKEY
48+
private_key=PKEY,
49+
alg="ES256",
4050
)
4151

4252
mdoc = mdoci.new(
4353
doctype="eu.europa.ec.eudiw.pid.1",
4454
data=PID_DATA,
45-
devicekeyinfo=PKEY # TODO
55+
#devicekeyinfo=PKEY, TODO
56+
validity={
57+
"issuance_date": "2024-12-31",
58+
"expiry_date": "2050-12-31"
59+
},
4660
)
4761

4862
mdocp = MdocCbor()
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
import os
2+
import cbor2
3+
from pymdoccbor.mdoc.issuer import MdocCborIssuer
4+
from pymdoccbor.tests.micov_data import MICOV_DATA
5+
from pymdoccbor.mdoc.verifier import MdocCbor
6+
7+
PKEY = {
8+
'KTY': 'EC2',
9+
'CURVE': 'P_256',
10+
'ALG': 'ES256',
11+
'D': os.urandom(32),
12+
'KID': b"demo-kid"
13+
}
14+
15+
def test_mdoc_cbor_creation():
16+
mdoci = MdocCborIssuer(
17+
private_key=PKEY,
18+
alg="ES256",
19+
)
20+
mdoc = mdoci.new(
21+
data=MICOV_DATA,
22+
#devicekeyinfo=PKEY, # TODO
23+
doctype="org.micov.medical.1",
24+
validity={
25+
"issuance_date": "2024-12-31",
26+
"expiry_date": "2050-12-31"
27+
},
28+
)
29+
30+
data = cbor2.dumps(mdoc)
31+
32+
mdocp = MdocCbor()
33+
mdocp.loads(data)
34+
mdocp.verify()
35+
36+
assert mdoc

0 commit comments

Comments
 (0)