Fix Signal messages and replies
This commit is contained in:
43
core/tests/test_signal_unlink_fallback.py
Normal file
43
core/tests/test_signal_unlink_fallback.py
Normal file
@@ -0,0 +1,43 @@
|
||||
from unittest.mock import Mock, patch
|
||||
|
||||
from django.test import TestCase
|
||||
|
||||
from core.clients import transport
|
||||
|
||||
|
||||
class SignalUnlinkFallbackTests(TestCase):
|
||||
@patch("core.clients.transport._wipe_signal_cli_local_state")
|
||||
@patch("requests.delete")
|
||||
def test_signal_unlink_uses_rest_delete_when_available(
|
||||
self,
|
||||
mock_delete,
|
||||
mock_wipe,
|
||||
):
|
||||
ok_response = Mock()
|
||||
ok_response.ok = True
|
||||
mock_delete.return_value = ok_response
|
||||
|
||||
result = transport.unlink_account("signal", "+447700900000")
|
||||
|
||||
self.assertTrue(result)
|
||||
self.assertTrue(mock_delete.called)
|
||||
mock_wipe.assert_not_called()
|
||||
|
||||
@patch("core.clients.transport._wipe_signal_cli_local_state")
|
||||
@patch("requests.delete")
|
||||
def test_signal_unlink_falls_back_to_local_wipe(
|
||||
self,
|
||||
mock_delete,
|
||||
mock_wipe,
|
||||
):
|
||||
bad_response = Mock()
|
||||
bad_response.ok = False
|
||||
mock_delete.return_value = bad_response
|
||||
mock_wipe.return_value = True
|
||||
|
||||
result = transport.unlink_account("signal", "+447700900000")
|
||||
|
||||
self.assertTrue(result)
|
||||
self.assertEqual(2, mock_delete.call_count)
|
||||
mock_wipe.assert_called_once()
|
||||
|
||||
Reference in New Issue
Block a user