示例#1
0
def test_make_signing_profile(admin_stub):
    # Create a new signing profile
    profile_name = "test_signing_profile_name"
    profile_id = create_signing_profile(admin_stub, profile_name)

    # Get the new squeak profile
    squeak_profile = get_squeak_profile(admin_stub, profile_id)
    assert squeak_profile.profile_name == profile_name
    squeak_profile_pubkey = squeak_profile.pubkey

    # Get all signing profiles
    get_signing_profiles_response = admin_stub.GetSigningProfiles(
        squeak_admin_pb2.GetSigningProfilesRequest()
    )
    signing_profile_names = [
        profile.profile_name
        for profile in get_signing_profiles_response.squeak_profiles
    ]
    assert profile_name in signing_profile_names

    # Get squeak profile by address
    # get_profile_by_address_response = admin_stub.GetSqueakProfileByAddress(
    #     squeak_admin_pb2.GetSqueakProfileByAddressRequest(
    #         pubkey=squeak_profile_pubkey
    #     )
    # )
    profile = get_profile_by_pubkey(admin_stub, squeak_profile_pubkey)
    assert profile.profile_name == profile_name

    # Export the private key, delete the profile, and re-import it.
    get_private_key_response = admin_stub.GetSqueakProfilePrivateKey(
        squeak_admin_pb2.GetSqueakProfilePrivateKeyRequest(
            profile_id=profile_id,
        )
    )
    private_key = get_private_key_response.private_key

    delete_profile(admin_stub, profile_id)
    new_profile_id = import_signing_profile(
        admin_stub,
        "imported_profile_name",
        private_key,
    )

    # Get the new imported profile
    squeak_profile = get_squeak_profile(admin_stub, new_profile_id)
    assert squeak_profile.profile_name == "imported_profile_name"
    assert squeak_profile.pubkey == squeak_profile_pubkey
示例#2
0
def test_delete_profile(admin_stub, random_name, squeak_address,
                        contact_profile_id):
    # Delete the profile
    delete_profile(admin_stub, contact_profile_id)

    # Try to get the profile and fail
    squeak_profile = get_squeak_profile(admin_stub, contact_profile_id)
    assert squeak_profile is None

    get_squeak_profile_by_name_response = admin_stub.GetSqueakProfileByName(
        squeak_admin_pb2.GetSqueakProfileByNameRequest(name=random_name, ))
    assert not get_squeak_profile_by_name_response.HasField("squeak_profile")

    get_squeak_profile_by_address_response = admin_stub.GetSqueakProfileByAddress(
        squeak_admin_pb2.GetSqueakProfileByAddressRequest(
            address=squeak_address, ))
    assert not get_squeak_profile_by_address_response.HasField(
        "squeak_profile")
示例#3
0
def test_delete_profile(admin_stub, random_name, public_key, contact_profile_id):
    # Delete the profile
    delete_profile(admin_stub, contact_profile_id)

    # Try to get the profile and fail
    squeak_profile = get_squeak_profile(admin_stub, contact_profile_id)
    assert squeak_profile is None

    get_squeak_profile_by_name_response = admin_stub.GetSqueakProfileByName(
        squeak_admin_pb2.GetSqueakProfileByNameRequest(
            name=random_name,
        )
    )
    assert not get_squeak_profile_by_name_response.HasField("squeak_profile")

    # get_squeak_profile_by_pubkey_response = admin_stub.GetSqueakProfileByAddress(
    #     squeak_admin_pb2.GetSqueakProfileByAddressRequest(
    #         pubkey=public_key.to_bytes().hex(),
    #     )
    # )
    profile = get_profile_by_pubkey(admin_stub, public_key.to_bytes().hex())
    # assert not get_squeak_profile_by_pubkey_response.HasField(
    #     "squeak_profile")
    assert profile is None
示例#4
0
def signing_profile_id(admin_stub, random_name):
    # Create a new signing profile
    profile_id = create_signing_profile(admin_stub, random_name)
    yield profile_id
    # Delete the profile
    delete_profile(admin_stub, profile_id)