def test_push_sms_plaintext_failure(): device = Mock() device.device_iden = "123" mock_response = Mock() mock_response.status_code = 500 session = Mock() session.post.return_value = mock_response pb = PushBullet("apikey") pb._session = session with pytest.raises(PushError): 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": { "type": "messaging_extension_reply", "package_name": "com.pushbullet.android", "source_user_iden": "123", "target_device_iden": "123", "conversation_iden": "+123456789", "message": "This is an example text", }, }), )
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 }, }), )