mirror of
https://github.com/zulip/zulip.git
synced 2025-11-03 13:33:24 +00:00
Add APNS feedback server tests.
This commit is contained in:
@@ -178,8 +178,8 @@ def check_apns_feedback():
|
||||
since_date = timestamp_to_datetime(since)
|
||||
logging.info("Found unavailable token %s, unavailable since %s" % (token, since_date))
|
||||
|
||||
PushDeviceToken.objects.filter(token=hex_to_b64(token), last_updates__lt=since_date,
|
||||
type=PushDeviceToken.APNS).delete()
|
||||
PushDeviceToken.objects.filter(token=hex_to_b64(token), last_updated__lt=since_date,
|
||||
kind=PushDeviceToken.APNS).delete()
|
||||
logging.info("Finished checking feedback for stale tokens")
|
||||
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import mock
|
||||
import time
|
||||
from typing import Any
|
||||
|
||||
from django.test import TestCase
|
||||
@@ -126,3 +127,15 @@ class SendNotificationTest(PushNotificationTest):
|
||||
apn.connection = None
|
||||
apn.dbx_connection = None
|
||||
apn.send_apple_push_notification(self.user_profile, "test alert")
|
||||
|
||||
class APNsFeedbackTest(PushNotificationTest):
|
||||
@mock.patch('apns.FeedbackConnection.items')
|
||||
def test_feedback(self, mock_items):
|
||||
update_time = apn.timestamp_to_datetime(int(time.time()) - 10000)
|
||||
PushDeviceToken.objects.all().update(last_updated=update_time)
|
||||
mock_items.return_value = [
|
||||
('aaaa', int(time.time())),
|
||||
]
|
||||
self.assertEqual(PushDeviceToken.objects.all().count(), 2)
|
||||
apn.check_apns_feedback()
|
||||
self.assertEqual(PushDeviceToken.objects.all().count(), 1)
|
||||
|
||||
Reference in New Issue
Block a user