Skip to content

Commit 4375c26

Browse files
committed
test: fix lazy firebase rebase follow-ups
1 parent b3f05cf commit 4375c26

4 files changed

Lines changed: 28 additions & 26 deletions

File tree

fcm_django/models.py

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
MAX_MESSAGES_PER_BATCH = 500
3030
MAX_DEVICES_PER_SUBSCRIBE_REQUEST = 1000
3131

32+
3233
class Device(models.Model):
3334
id = models.AutoField(
3435
verbose_name="ID",
@@ -134,9 +135,9 @@ def _build_bulk_personalized_messages(
134135
registration_ids: list[str],
135136
title_template: str,
136137
body_template: str,
137-
message_data: Optional[dict[str, dict[str, Any]]] = None,
138-
data_fields: Optional[dict[str, Any]] = None,
139-
) -> list["messaging.Message"]:
138+
message_data: dict[str, dict[str, Any]] | None = None,
139+
data_fields: dict[str, Any] | None = None,
140+
) -> list[messaging.Message]:
140141
from firebase_admin import messaging
141142

142143
messages = []
@@ -159,7 +160,7 @@ def _build_bulk_personalized_messages(
159160
@staticmethod
160161
def _get_deactivation_candidates(
161162
registration_ids: list[str],
162-
results: list[Union["messaging.SendResponse", "messaging.ErrorInfo"]],
163+
results: list[messaging.SendResponse | messaging.ErrorInfo],
163164
) -> list[str]:
164165
if not results:
165166
return []
@@ -275,10 +276,10 @@ def send_message(
275276

276277
async def asend_message(
277278
self,
278-
message: "messaging.Message",
279+
message: messaging.Message,
279280
skip_registration_id_lookup: bool = False,
280281
additional_registration_ids: Sequence[str] = None,
281-
app: Optional["firebase_admin.App"] = None,
282+
app: firebase_admin.App | None = None,
282283
**more_send_message_kwargs,
283284
) -> FirebaseResponseDict:
284285
registration_ids = await self.aget_registration_ids(
@@ -374,11 +375,11 @@ async def asend_bulk_personalized_messages(
374375
self,
375376
title_template: str,
376377
body_template: str,
377-
message_data: Optional[dict[str, dict[str, Any]]] = None,
378-
data_fields: Optional[dict[str, Any]] = None,
378+
message_data: dict[str, dict[str, Any]] | None = None,
379+
data_fields: dict[str, Any] | None = None,
379380
skip_registration_id_lookup: bool = False,
380381
additional_registration_ids: Sequence[str] = None,
381-
app: Optional["firebase_admin.App"] = None,
382+
app: firebase_admin.App | None = None,
382383
**more_send_message_kwargs,
383384
) -> FirebaseResponseDict:
384385
registration_ids = await self.aget_registration_ids(
@@ -438,7 +439,7 @@ async def adeactivate(
438439
*,
439440
reason: str,
440441
source: str,
441-
metadata: Optional[dict[str, Any]] = None,
442+
metadata: dict[str, Any] | None = None,
442443
) -> list[str]:
443444
active_devices = self.filter(active=True)
444445
device_rows = [
@@ -483,7 +484,7 @@ def deactivate_devices_with_error_results(
483484
async def adeactivate_devices_with_error_results(
484485
self,
485486
registration_ids: list[str],
486-
results: list[Union["messaging.SendResponse", "messaging.ErrorInfo"]],
487+
results: list[messaging.SendResponse | messaging.ErrorInfo],
487488
) -> list[str]:
488489
deactivation_candidates = self._get_deactivation_candidates(
489490
registration_ids, results

tests/test_admin.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ def test_send_message_action_handles_firebase_error(
3737
client, base_admin_url, fcm_device, mocker
3838
):
3939
mocker.patch(
40-
"fcm_django.models.messaging.send",
40+
"firebase_admin.messaging.send",
4141
side_effect=FirebaseError(code="unknown", message="firebase failed"),
4242
)
4343

@@ -60,7 +60,7 @@ def test_send_topic_message_action_handles_firebase_error(
6060
client, base_admin_url, fcm_device, mocker
6161
):
6262
mocker.patch(
63-
"fcm_django.models.messaging.send",
63+
"firebase_admin.messaging.send",
6464
side_effect=FirebaseError(code="unknown", message="firebase failed"),
6565
)
6666

tests/test_models.py

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -110,11 +110,11 @@ def assert_sent_successfully(
110110
self,
111111
result: Any,
112112
fcm_device: FCMDevice,
113-
message: "Message",
113+
message: Message,
114114
mock_firebase_send: MagicMock,
115115
message_id: str,
116116
app: Any = None,
117-
send_message_kwargs: Optional[dict] = None,
117+
send_message_kwargs: dict | None = None,
118118
):
119119
send_message_kwargs = send_message_kwargs or {}
120120

@@ -135,7 +135,7 @@ def assert_sent_successfully(
135135
def test_ok(
136136
self,
137137
fcm_device: FCMDevice,
138-
message: "Message",
138+
message: Message,
139139
mock_firebase_send: MagicMock,
140140
firebase_message_id_send: str,
141141
):
@@ -151,7 +151,7 @@ def test_ok(
151151
def test_custom_params(
152152
self,
153153
fcm_device: FCMDevice,
154-
message: "Message",
154+
message: Message,
155155
mock_firebase_send: MagicMock,
156156
firebase_message_id_send: str,
157157
):
@@ -200,9 +200,9 @@ def test_uses_overridden_default_firebase_app(
200200
def test_firebase_error(
201201
self,
202202
fcm_device: FCMDevice,
203-
message: "Message",
203+
message: Message,
204204
mock_firebase_send: MagicMock,
205-
firebase_error: "FirebaseError",
205+
firebase_error: FirebaseError,
206206
):
207207
"""
208208
Ensure when happened unknown firebase error device is still active and raised the FirebaseError
@@ -221,7 +221,7 @@ def test_firebase_error(
221221
def test_firebase_invalid_registration_error(
222222
self,
223223
fcm_device: FCMDevice,
224-
message: "Message",
224+
message: Message,
225225
mock_firebase_send: MagicMock,
226226
):
227227
"""
@@ -265,12 +265,12 @@ class TestFCMDeviceSendTopicMessage:
265265
def assert_sent_successfully(
266266
self,
267267
result: Any,
268-
message: "Message",
268+
message: Message,
269269
topic: str,
270270
mock_firebase_send: MagicMock,
271271
message_id: str,
272272
app: Any = None,
273-
send_message_kwargs: Optional[dict] = None,
273+
send_message_kwargs: dict | None = None,
274274
):
275275
send_message_kwargs = send_message_kwargs or {}
276276

@@ -289,7 +289,7 @@ def assert_sent_successfully(
289289

290290
def test_ok(
291291
self,
292-
message: "Message",
292+
message: Message,
293293
mock_firebase_send: MagicMock,
294294
firebase_message_id_send: str,
295295
):
@@ -306,7 +306,7 @@ def test_ok(
306306

307307
def test_custom_params(
308308
self,
309-
message: "Message",
309+
message: Message,
310310
mock_firebase_send: MagicMock,
311311
firebase_message_id_send: str,
312312
):
@@ -334,9 +334,9 @@ def test_custom_params(
334334

335335
def test_firebase_error(
336336
self,
337-
message: "Message",
337+
message: Message,
338338
mock_firebase_send: MagicMock,
339-
firebase_error: "FirebaseError",
339+
firebase_error: FirebaseError,
340340
):
341341
"""
342342
Ensure we raise an error in case firebase_admin.messaging.send throws one

tests/test_settings.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ def test_runtime_settings_do_not_share_nested_defaults():
5151

5252
assert "temporary" not in DEFAULT_SETTINGS["ERRORS"]
5353

54+
5455
def test_importing_models_and_admin_does_not_eager_load_firebase_admin():
5556
env = {
5657
**os.environ,

0 commit comments

Comments
 (0)