예제 #1
0
def test_push_sms_encrypted_ok(pb_encrypt):
    device = Mock()
    device.device_iden = "123"

    mock_response = Mock()
    mock_response.status_code = 200

    session = Mock()
    session.post.return_value = mock_response

    pb_encrypt.return_value = "encrypted text"

    pb = PushBullet("apikey")
    pb._session = session
    pb._encryption_key = "123"

    # When
    pb.push_sms(device, "+123456789", "This is an example text")

    session.post.assert_called_once_with(
        pb.EPHEMERALS_URL,
        data=json.dumps({
            "type": "push",
            "push": {
                "ciphertext": "encrypted text",
                "encrypted": True
            },
        }),
    )
예제 #2
0
def test_decryption():
    pb = PushBullet(API_KEY, encryption_password="******")
    pb._encryption_key = a2b_base64(
        "1sW28zp7CWv5TtGjlQpDHHG4Cbr9v36fG5o4f74LsKg=")

    test_data = "MSfJxxY5YdjttlfUkCaKA57qU9SuCN8+ZhYg/xieI+lDnQ=="
    decrypted = pb._decrypt_data(test_data)

    assert decrypted == "meow!"