예제 #1
0
def test_example_6_2():
    verified_claims = {
        "verified_claims": {
            "verification": {
                "trust_framework":
                "de_aml",
                "time":
                "2012-04-23T18:25:43.511+01",
                "verification_process":
                "676q3636461467647q8498785747q487",
                "evidence": [{
                    "type": "id_document",
                    "method": "pipp",
                    "document": {
                        "document_type": "de_erp_replacement_idcard",
                        "issuer": {
                            "name": "Stadt Augsburg",
                            "country": "DE"
                        },
                        "number": "53554554",
                        "date_of_issuance": "2012-04-23",
                        "date_of_expiry": "2022-04-22"
                    }
                }, {
                    "type": "utility_bill",
                    "provider": {
                        "name": "Stadtwerke Musterstadt",
                        "country": "DE",
                        "region": "Thüringen",
                        "street_address": "Energiestrasse 33"
                    },
                    "date": "2013-01-31"
                }]
            },
            "claims": {
                "given_name": "Max",
                "family_name": "Meier",
                "birthdate": "1956-01-28",
                "place_of_birth": {
                    "country": "DE",
                    "locality": "Musterstadt"
                },
                "nationality": "DE",
                "address": {
                    "locality": "Maxstadt",
                    "postal_code": "12344",
                    "country": "DE",
                    "street_address": "An der Sanddüne 22"
                }
            }
        }
    }

    vc = VerifiedClaims(**verified_claims["verified_claims"])
    vc.verify()
    assert vc["verification"]["trust_framework"] == "de_aml"
    assert len(vc["verification"]["evidence"]) == 2

    evidence_types = [e["type"] for e in vc["verification"]["evidence"]]
    assert set(evidence_types) == {"id_document", "utility_bill"}
예제 #2
0
def test_example_6_3():
    verified_claims = {
        "verified_claims": {
            "verification": {
                "trust_framework": "eidas_ial_substantial"
            },
            "claims": {
                "given_name": "Max",
                "family_name": "Meier",
                "birthdate": "1956-01-28",
                "place_of_birth": {
                    "country": "DE",
                    "locality": "Musterstadt"
                },
                "nationality": "DE",
                "address": {
                    "locality": "Maxstadt",
                    "postal_code": "12344",
                    "country": "DE",
                    "street_address": "An der Sanddüne 22"
                }
            }
        }
    }

    vc = VerifiedClaims(**verified_claims["verified_claims"])
    vc.verify()
    assert vc["verification"]["trust_framework"] == "eidas_ial_substantial"
예제 #3
0
def test_example_6_1():
    verified_claims = {
        "verified_claims": {
            "verification": {
                "trust_framework":
                "de_aml",
                "time":
                "2012-04-23T18:25:43.511+01",
                "verification_process":
                "676q3636461467647q8498785747q487",
                "evidence": [{
                    "type": "id_document",
                    "method": "pipp",
                    "document": {
                        "type": "idcard",
                        "issuer": {
                            "name": "Stadt Augsburg",
                            "country": "DE"
                        },
                        "number": "53554554",
                        "date_of_issuance": "2012-04-23",
                        "date_of_expiry": "2022-04-22"
                    }
                }]
            },
            "claims": {
                "given_name": "Max",
                "family_name": "Meier",
                "birthdate": "1956-01-28",
                "place_of_birth": {
                    "country": "DE",
                    "locality": "Musterstadt"
                },
                "nationality": "DE",
                "address": {
                    "locality": "Maxstadt",
                    "postal_code": "12344",
                    "country": "DE",
                    "street_address": "An der Sanddüne 22"
                }
            }
        }
    }

    vc = VerifiedClaims(**verified_claims["verified_claims"])
    vc.verify()
    assert vc["verification"]["trust_framework"] == "de_aml"
    assert vc["verification"]["evidence"][0]["type"] == "id_document"
예제 #4
0
def test_example_6_4_2():
    userinfo_response = {
        "sub": "248289761001",
        "email": "*****@*****.**",
        "email_verified": True,
        "verified_claims": {
            "verification": {
                "trust_framework":
                "de_aml",
                "time":
                "2012-04-23T18:25:43.511+01",
                "verification_process":
                "676q3636461467647q8498785747q487",
                "evidence": [{
                    "type": "id_document",
                    "method": "pipp",
                    "document": {
                        "type": "idcard",
                        "issuer": {
                            "name": "Stadt Augsburg",
                            "country": "DE"
                        },
                        "number": "53554554",
                        "date_of_issuance": "2012-04-23",
                        "date_of_expiry": "2022-04-22"
                    }
                }]
            },
            "claims": {
                "given_name": "Max",
                "family_name": "Meier",
                "birthdate": "1956-01-28"
            }
        }
    }

    vc = VerifiedClaims(**userinfo_response["verified_claims"])
    vc.verify()
    assert vc["verification"]["trust_framework"] == "de_aml"