From eb9bc9f27aebdd10ec876d0fdd2de9cde48feea4 Mon Sep 17 00:00:00 2001 From: Taksh Date: Mon, 5 Oct 2026 16:15:19 +0530 Subject: [PATCH 1/3] Provide plural resources for nearby peer notifications Split the existing PR change into a smaller reviewable piece. Original change: chore: retry intermittent baseline reassembly test --- app/src/main/res/values-ar/strings.xml | 6 ++++-- app/src/main/res/values-bn/strings.xml | 6 ++++-- app/src/main/res/values-de/strings.xml | 6 ++++-- app/src/main/res/values-es/strings.xml | 6 ++++-- app/src/main/res/values-fa/strings.xml | 6 ++++-- app/src/main/res/values-fil/strings.xml | 6 ++++-- app/src/main/res/values-fr/strings.xml | 6 ++++-- app/src/main/res/values-he/strings.xml | 6 ++++-- app/src/main/res/values-hi/strings.xml | 6 ++++-- app/src/main/res/values-id/strings.xml | 6 ++++-- app/src/main/res/values-it/strings.xml | 6 ++++-- app/src/main/res/values-ja/strings.xml | 6 ++++-- app/src/main/res/values-ka/strings.xml | 6 ++++-- app/src/main/res/values-ko/strings.xml | 6 ++++-- app/src/main/res/values-mg/strings.xml | 6 ++++-- app/src/main/res/values-ms/strings.xml | 6 ++++-- app/src/main/res/values-ne/strings.xml | 6 ++++-- app/src/main/res/values-nl/strings.xml | 6 ++++-- app/src/main/res/values-pa-rPK/strings.xml | 6 ++++-- app/src/main/res/values-pl/strings.xml | 6 ++++-- app/src/main/res/values-pt-rBR/strings.xml | 6 ++++-- app/src/main/res/values-pt/strings.xml | 6 ++++-- app/src/main/res/values-ru/strings.xml | 6 ++++-- app/src/main/res/values-sv/strings.xml | 6 ++++-- app/src/main/res/values-ta/strings.xml | 6 ++++-- app/src/main/res/values-th/strings.xml | 6 ++++-- app/src/main/res/values-tr/strings.xml | 6 ++++-- app/src/main/res/values-uk/strings.xml | 6 ++++-- app/src/main/res/values-ur/strings.xml | 6 ++++-- app/src/main/res/values-vi/strings.xml | 6 ++++-- app/src/main/res/values-zh-rCN/strings.xml | 6 ++++-- app/src/main/res/values-zh-rTW/strings.xml | 6 ++++-- app/src/main/res/values-zh/strings.xml | 6 ++++-- app/src/main/res/values/strings.xml | 6 ++++-- 34 files changed, 136 insertions(+), 68 deletions(-) diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 772e48a5..45123b23 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -47,8 +47,10 @@ %1$d رسالة من %2$d أشخاص و%1$d محادثات أخرى مستخدمون قريبون! - شخص واحد قريب - %1$d أشخاص قريبون + + شخص واحد قريب + %1$d أشخاص قريبون + رسائل جديدة رسائل موقع جديدة تم ذكرك في %1$s diff --git a/app/src/main/res/values-bn/strings.xml b/app/src/main/res/values-bn/strings.xml index b6557fe2..6514eb46 100644 --- a/app/src/main/res/values-bn/strings.xml +++ b/app/src/main/res/values-bn/strings.xml @@ -47,8 +47,10 @@ %2$d জন থেকে %1$d বার্তা এবং %1$d আরো কথোপকথন কাছাকাছি bitchatter! - কাছাকাছি ১ জন - কাছাকাছি %1$d জন + + কাছাকাছি %1$d জন + কাছাকাছি %1$d জন + নতুন বার্তা নতুন অবস্থান বার্তা %1$s এ উল্লিখিত diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 75cc8927..dd814962 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -47,8 +47,10 @@ %1$d Nachrichten von %2$d Personen und %1$d weitere Unterhaltungen bitchatter in der Nähe! - 1 Person in der Nähe - %1$d Personen in der Nähe + + %1$d Person in der Nähe + %1$d Personen in der Nähe + Neue Nachrichten Neue Standort‑Nachrichten Erwähnt in %1$s diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 3f08ead0..21be5f4b 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -47,8 +47,10 @@ %1$d mensajes de %2$d personas y %1$d conversaciones más ¡bitchatters cerca! - 1 persona cerca - %1$d personas cerca + + %1$d persona cerca + %1$d personas cerca + Nuevos mensajes Nuevos mensajes de ubicación Mencionado en %1$s diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml index 1e092b64..844cdbfa 100644 --- a/app/src/main/res/values-fa/strings.xml +++ b/app/src/main/res/values-fa/strings.xml @@ -47,8 +47,10 @@ %1$d پیام از %2$d نفر و %1$d گفت‌وگوی دیگر کاربران bitchat در نزدیکی! - ۱ نفر در نزدیکی - %1$d نفر در نزدیکی + + %1$d نفر در نزدیکی + %1$d نفر در نزدیکی + پیام‌های جدید پیام‌های مکانی جدید ذکر شده در %1$s diff --git a/app/src/main/res/values-fil/strings.xml b/app/src/main/res/values-fil/strings.xml index fa4aea0c..2927bf4d 100644 --- a/app/src/main/res/values-fil/strings.xml +++ b/app/src/main/res/values-fil/strings.xml @@ -47,8 +47,10 @@ %1$d mensahe mula sa %2$d tao at %1$d pang usapan mga bitchatter na malapit! - 1 tao sa paligid - %1$d tao sa paligid + + %1$d tao sa paligid + %1$d tao sa paligid + Mga bagong mensahe Mga mensahe sa lokasyon Nabanggit sa %1$s diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index a884d35e..e9df9cd3 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -47,8 +47,10 @@ %1$d messages de %2$d personnes et %1$d conversations de plus bitchatters à proximité ! - 1 personne à proximité - %1$d personnes à proximité + + %1$d personne à proximité + %1$d personnes à proximité + Nouveaux messages Nouveaux messages de lieu Mentionné dans %1$s diff --git a/app/src/main/res/values-he/strings.xml b/app/src/main/res/values-he/strings.xml index f742042e..b9837662 100644 --- a/app/src/main/res/values-he/strings.xml +++ b/app/src/main/res/values-he/strings.xml @@ -93,8 +93,10 @@ %1$d הודעות מ-%2$d אנשים ועוד %1$d שיחות 👥 יש בצ׳אטרים בקרבת מקום! - אדם אחד בסביבה - %1$d אנשים בסביבה + + אדם אחד בסביבה + %1$d אנשים בסביבה + הודעות חדשות הודעות מיקום חדשות אוזכרת ב-%1$s diff --git a/app/src/main/res/values-hi/strings.xml b/app/src/main/res/values-hi/strings.xml index 4cb18e38..906912a9 100644 --- a/app/src/main/res/values-hi/strings.xml +++ b/app/src/main/res/values-hi/strings.xml @@ -47,8 +47,10 @@ %2$d लोगों से %1$d संदेश और %1$d वार्तालाप पास में उपयोगकर्ता! - पास में 1 व्यक्ति - पास में %1$d लोग + + पास में %1$d व्यक्ति + पास में %1$d लोग + नए संदेश नई स्थान संदेश %1$s में उल्लेख diff --git a/app/src/main/res/values-id/strings.xml b/app/src/main/res/values-id/strings.xml index 02c86a68..982e1b9a 100644 --- a/app/src/main/res/values-id/strings.xml +++ b/app/src/main/res/values-id/strings.xml @@ -47,8 +47,10 @@ %1$d pesan dari %2$d orang dan %1$d percakapan lagi bitchatter terdekat! - 1 orang terdekat - %1$d orang terdekat + + %1$d orang terdekat + %1$d orang terdekat + Pesan baru Pesan lokasi baru Disebut di %1$s diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index af59fad3..1bf162d1 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -47,8 +47,10 @@ %1$d messaggi da %2$d persone e altre %1$d conversazioni bitchatter nelle vicinanze! - 1 persona nei dintorni - %1$d persone nei dintorni + + %1$d persona nei dintorni + %1$d persone nei dintorni + Nuovi messaggi Nuovi messaggi di posizione Menzionato in %1$s diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 17841dcc..dd67238c 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -47,8 +47,10 @@ %2$d 人からの %1$d 件のメッセージ ほか %1$d 会話 近くに bitchatter ! - 近くに 1 人 - 近くに %1$d 人 + + 近くに %1$d 人 + 近くに %1$d 人 + 新着メッセージ 新しい位置情報メッセージ %1$s でのメンション diff --git a/app/src/main/res/values-ka/strings.xml b/app/src/main/res/values-ka/strings.xml index 8fe186cc..c061ea11 100644 --- a/app/src/main/res/values-ka/strings.xml +++ b/app/src/main/res/values-ka/strings.xml @@ -47,8 +47,10 @@ %2$d ადამიანიდან %1$d შეტყობინება და კიდევ %1$d საუბარი bitchatter-ები ახლოს! - 1 ადამიანი ახლოს - ახლოს %1$d ადამიანი + + %1$d ადამიანი ახლოს + ახლოს %1$d ადამიანი + ახალი შეტყობინებები მდებარეობის ახალი შეტყობინებები ხსენება %1$s-ში diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index 030165d6..13035cda 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -47,8 +47,10 @@ %2$d명에게서 %1$d개의 메시지 그리고 %1$d개의 대화 더 근처 bitchatter! - 근처 1명 - 근처 %1$d명 + + 근처 %1$d명 + 근처 %1$d명 + 새 메시지 새 위치 메시지 %1$s에서 언급됨 diff --git a/app/src/main/res/values-mg/strings.xml b/app/src/main/res/values-mg/strings.xml index b7182e09..c2f78c42 100644 --- a/app/src/main/res/values-mg/strings.xml +++ b/app/src/main/res/values-mg/strings.xml @@ -47,8 +47,10 @@ %1$d hafatra avy amin\'ny olona %2$d ary %1$d resaka hafa bitchatter akaiky! - Olona 1 manodidina - Olona %1$d manodidina + + Olona %1$d manodidina + Olona %1$d manodidina + Hafatra vaovao Hafatra Toerana Vaovao Voatonona ao amin\'ny %1$s diff --git a/app/src/main/res/values-ms/strings.xml b/app/src/main/res/values-ms/strings.xml index 79bf5b1c..f16cf7d5 100644 --- a/app/src/main/res/values-ms/strings.xml +++ b/app/src/main/res/values-ms/strings.xml @@ -44,8 +44,10 @@ %1$d mesej daripada %2$d orang dan %1$d perbualan lagi 👥 bitchatter berdekatan! - 1 orang berdekatan - %1$d orang berdekatan + + %1$d orang berdekatan + %1$d orang berdekatan + Mesej Baharu Mesej Lokasi Baharu Disebut dalam %1$s diff --git a/app/src/main/res/values-ne/strings.xml b/app/src/main/res/values-ne/strings.xml index 59d52853..ff25d2f1 100644 --- a/app/src/main/res/values-ne/strings.xml +++ b/app/src/main/res/values-ne/strings.xml @@ -47,8 +47,10 @@ %1$d सन्देश %2$d जनाबाट र %1$d अरू कुराकानी नजिकै bitchatter हरू! - १ जना नजिकै - %1$d जना नजिकै + + %1$d जना नजिकै + %1$d जना नजिकै + नयाँ सन्देश नयाँ स्थान सन्देश %1$s मा उल्लेख diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 1e46f196..2378d728 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -47,8 +47,10 @@ %1$d berichten van %2$d personen en %1$d meer conversaties bitchatters in de buurt! - 1 persoon in de buurt - %1$d personen in de buurt + + %1$d persoon in de buurt + %1$d personen in de buurt + Nieuwe berichten Nieuwe locatieberichten Vermeld in %1$s diff --git a/app/src/main/res/values-pa-rPK/strings.xml b/app/src/main/res/values-pa-rPK/strings.xml index a3f67735..62623b33 100644 --- a/app/src/main/res/values-pa-rPK/strings.xml +++ b/app/src/main/res/values-pa-rPK/strings.xml @@ -47,8 +47,10 @@ %2$d لوکان کولوں %1$d پیغام تے %1$d ہور گلاں نیڑے bitchatter! - نیڑے 1 بندہ - نیڑے %1$d بندے + + نیڑے %1$d بندہ + نیڑے %1$d بندے + نویں پیغام نویں لوکیشن پیغام %1$s وچ ذکر ہویا diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 3ec84dd4..420c156c 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -95,8 +95,10 @@ %1$d wiadomości od %2$d osób i jeszcze %1$d rozmów 👥 bitchatowicze w pobliżu! - 1 osoba w pobliżu - %1$d osób w pobliżu + + %1$d osoba w pobliżu + %1$d osób w pobliżu + Nowe wiadomości Nowe wiadomości lokalizacyjne Wzmianka w %1$s diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 42340857..0380e138 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -47,8 +47,10 @@ %1$d mensagens de %2$d pessoas e mais %1$d conversas pessoas do bitchat por perto! - 1 pessoa por perto - %1$d pessoas por perto + + %1$d pessoa por perto + %1$d pessoas por perto + Novas mensagens Novas mensagens de localização Mencionado em %1$s diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index 0e01bb07..3d3987e1 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -47,8 +47,10 @@ %1$d mensagens de %2$d pessoas e mais %1$d conversas bitchatters por perto! - 1 pessoa por perto - %1$d pessoas por perto + + %1$d pessoa por perto + %1$d pessoas por perto + Novas mensagens Novas mensagens de localização Mencionado em %1$s diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 02b1175d..32a0e6f8 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -41,8 +41,10 @@ %1$d сообщений от %2$d людей и ещё %1$d бесед bitchatter рядом! - Рядом 1 человек - Рядом %1$d человек + + Рядом %1$d человек + Рядом %1$d человек + Новые сообщения Новые сообщения локаций Упоминание в %1$s diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index b958faad..7c4fe4f4 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -41,8 +41,10 @@ %1$d meddelanden från %2$d personer och %1$d fler konversationer bitchatter i närheten! - 1 person i närheten - %1$d personer i närheten + + %1$d person i närheten + %1$d personer i närheten + Nya meddelanden Nya platsmeddelanden Nämnd i %1$s diff --git a/app/src/main/res/values-ta/strings.xml b/app/src/main/res/values-ta/strings.xml index 243f2112..19e3d11e 100644 --- a/app/src/main/res/values-ta/strings.xml +++ b/app/src/main/res/values-ta/strings.xml @@ -79,8 +79,10 @@ %2$d நபர்களிடமிருந்து %1$d செய்திகள் மற்றும் %1$d மேலும் உரையாடல்கள் 👥 அருகில் bitchatters! - 1 நபர் அருகில் உள்ளார் - %1$d நபர்கள் அருகில் உள்ளனர் + + %1$d நபர் அருகில் உள்ளார் + %1$d நபர்கள் அருகில் உள்ளனர் + புதிய செய்திகள் புதிய இருப்பிட செய்திகள் %1$s இல் குறிப்பிடப்பட்டது diff --git a/app/src/main/res/values-th/strings.xml b/app/src/main/res/values-th/strings.xml index b21049c1..8114b209 100644 --- a/app/src/main/res/values-th/strings.xml +++ b/app/src/main/res/values-th/strings.xml @@ -47,8 +47,10 @@ ข้อความ %1$d จาก %2$d คน และการสนทนาอีก %1$d รายการ มีผู้ใช้ใกล้คุณ! - มี 1 คนใกล้คุณ - มี %1$d คนใกล้คุณ + + มี %1$d คนใกล้คุณ + มี %1$d คนใกล้คุณ + ข้อความใหม่ ข้อความตำแหน่งใหม่ ถูกกล่าวถึงใน %1$s diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index 251d6a46..3f68c6d6 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -41,8 +41,10 @@ %2$d kişiden %1$d mesaj ve %1$d sohbet daha yakında bitchatter’lar! - Yakında 1 kişi - Yakında %1$d kişi + + Yakında %1$d kişi + Yakında %1$d kişi + Yeni mesajlar Yeni konum mesajları %1$s içinde bahsedildi diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index f248ff71..4402bcf6 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -80,8 +80,10 @@ %1$d повідомлень від %2$d людей і ще %1$d розмов 👥 bitchat-користувачі поруч! - 1 людина поруч - %1$d людей поруч + + %1$d людина поруч + %1$d людей поруч + Нові повідомлення Нові повідомлення в геолокації Згадка в %1$s diff --git a/app/src/main/res/values-ur/strings.xml b/app/src/main/res/values-ur/strings.xml index 785338fb..aac92f36 100644 --- a/app/src/main/res/values-ur/strings.xml +++ b/app/src/main/res/values-ur/strings.xml @@ -47,8 +47,10 @@ %2$d لوگوں سے %1$d پیغامات اور %1$d مزید گفتگو قریب میں bitchatter! - قریب میں 1 شخص - قریب میں %1$d لوگ + + قریب میں %1$d شخص + قریب میں %1$d لوگ + نئے پیغامات نئے مقام کے پیغامات %1$s میں ذکر diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml index b97c3fc5..dd3565bd 100644 --- a/app/src/main/res/values-vi/strings.xml +++ b/app/src/main/res/values-vi/strings.xml @@ -47,8 +47,10 @@ %1$d tin nhắn từ %2$d người và %1$d cuộc trò chuyện khác bitchatter gần đó! - 1 người gần đó - %1$d người gần đó + + %1$d người gần đó + %1$d người gần đó + Tin nhắn mới Tin nhắn vị trí mới Được nhắc đến trong %1$s diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index fca6b07b..05c9e895 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -93,8 +93,10 @@ 来自 %2$d 人的 %1$d 条消息 还有 %1$d 个对话 👥 附近有 bitchat 用户! - 附近有 1 人 - 附近有 %1$d 人 + + 附近有 %1$d 人 + 附近有 %1$d 人 + 新消息 新的位置消息 在 %1$s 中被提及 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index f427dbaf..39194c0e 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -93,8 +93,10 @@ 來自 %2$d 位使用者的 %1$d 則訊息 還有 %1$d 個對話 👥 附近有 bitchat 使用者! - 附近有 1 人 - 附近有 %1$d 人 + + 附近有 %1$d 人 + 附近有 %1$d 人 + 新訊息 新位置訊息 在 %1$s 中被提及 diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml index 35f7477a..aadff64b 100644 --- a/app/src/main/res/values-zh/strings.xml +++ b/app/src/main/res/values-zh/strings.xml @@ -47,8 +47,10 @@ 来自 %2$d 位的 %1$d 条消息 以及另外 %1$d 个会话 附近的 bitchatter! - 附近 1 人 - 附近 %1$d 人 + + 附近 %1$d 人 + 附近 %1$d 人 + 新消息 新的地点消息 在 %1$s 中被提及 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index a73b5bbb..ebe1dc06 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -48,8 +48,10 @@ %1$d messages from %2$d people and %1$d more conversations bitchatters nearby! - 1 person around - %1$d people around + + %1$d person around + %1$d people around + New Messages New Location Messages Mentioned in %1$s From 88d86eba0fa72b5a5ae4acea097b74a59bc27259 Mon Sep 17 00:00:00 2001 From: Taksh Date: Mon, 5 Oct 2026 16:15:20 +0530 Subject: [PATCH 2/3] Render peer notifications with quantity-aware strings Split the existing PR change into a smaller reviewable piece. Original change: chore: retry intermittent baseline reassembly test --- .../android/service/PeerAvailabilityNotifier.kt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/bitchat/android/service/PeerAvailabilityNotifier.kt b/app/src/main/java/com/bitchat/android/service/PeerAvailabilityNotifier.kt index 714d0708..d557f741 100644 --- a/app/src/main/java/com/bitchat/android/service/PeerAvailabilityNotifier.kt +++ b/app/src/main/java/com/bitchat/android/service/PeerAvailabilityNotifier.kt @@ -145,11 +145,11 @@ private class AndroidPeerAvailabilityTextProvider( } override fun body(peerCount: Int): String { - return if (peerCount == 1) { - context.getString(R.string.notification_active_peers_one) - } else { - context.getString(R.string.notification_active_peers_many, peerCount) - } + return context.resources.getQuantityString( + R.plurals.notification_active_peers_body, + peerCount, + peerCount + ) } } From 0573ee2f64269dcbc032e7c5b31cdfae9bed048e Mon Sep 17 00:00:00 2001 From: Taksh Date: Mon, 5 Oct 2026 16:15:20 +0530 Subject: [PATCH 3/3] Test peer notification plural formatting Split the existing PR change into a smaller reviewable piece. Original change: chore: retry intermittent baseline reassembly test --- .../service/PeerAvailabilityPluralTest.kt | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 app/src/test/kotlin/com/bitchat/android/service/PeerAvailabilityPluralTest.kt diff --git a/app/src/test/kotlin/com/bitchat/android/service/PeerAvailabilityPluralTest.kt b/app/src/test/kotlin/com/bitchat/android/service/PeerAvailabilityPluralTest.kt new file mode 100644 index 00000000..2605fb42 --- /dev/null +++ b/app/src/test/kotlin/com/bitchat/android/service/PeerAvailabilityPluralTest.kt @@ -0,0 +1,39 @@ +package com.bitchat.android.service + +import android.icu.text.PluralRules +import org.junit.Assert.assertTrue +import org.junit.Test +import org.junit.runner.RunWith +import org.robolectric.RobolectricTestRunner +import org.robolectric.annotation.Config +import java.io.File +import java.util.Locale + +@RunWith(RobolectricTestRunner::class) +@Config(sdk = [28], manifest = Config.NONE) +class PeerAvailabilityPluralTest { + @Test + fun `plural categories preserve the actual peer count`() { + // The JVM suite does not package app resources. Read the shipped catalog, + // then select its bucket using Android's ICU rules rather than guessing + // that the category named "one" can only describe the number 1. + for (qualifier in listOf("fil", "ru", "uk", "fr", "pt-rBR", "bn", "fa", "hi")) { + val locale = Locale.forLanguageTag(qualifier.replace("-r", "-")) + val strings = File("src/main/res/values-$qualifier/strings.xml").readText() + val body = Regex( + """(.*?)""", + RegexOption.DOT_MATCHES_ALL + ).find(strings)!!.groupValues[1] + val items = Regex("""(.*?)""") + .findAll(body).associate { it.groupValues[1] to it.groupValues[2] } + val rules = PluralRules.forLocale(locale) + for (count in listOf(0, 1, 2, 3, 5, 21, 31, 101)) { + val category = rules.select(count.toDouble()) + val template = items[category] ?: items.getValue("other") + val message = String.format(locale, template, count) + val expected = String.format(locale, "%d", count) + assertTrue("$qualifier count $count rendered as $message", message.contains(expected)) + } + } + } +}