« Fermer l'app Polar Flow » était un conseil faux, et mesuré tel dès le 31/08
Sylvain enchaîne un troisième envoi et reçoit « le canal est probablement occupé » — notre propre message, déclenché par watchNotFound avec des montres muettes : le service PsFTP est là, il ne répond pas. La chronologie de ses trois envois explique tout. Le premier réussit, montre fraîchement réinitialisée donc pas encore liée à Flow. Le deuxième renvoie 104 DIRECTORY_EXISTS, ce qui prouve que le canal était ENCORE libre. Le troisième échoue : Flow a repris la main entre-temps. Le canal n'est donc pas ouvert ou fermé en général — il y a une fenêtre, qui se referme dès que Flow se reconnecte. Le message conseillait de fermer complètement l'app Polar Flow. C'était faux, et la mesure du 31/08 le disait déjà : la montre affichait « connexion impossible » pendant que les réglages iOS la disaient toujours connectée à Flow. iOS maintient le lien d'un accessoire appairé, app fermée ou non. Le message nomme maintenant le geste qui libère réellement le canal — redémarrer la montre — précise que fermer l'app n'y change rien, et rappelle que le câble est le chemin fiable. Corrigé au passage le message des appareils sans PsFTP, qui présentait encore la question comme « l'inconnue restante » alors qu'elle a été tranchée le 31/08 : la montre expose bien PsFTP quand elle est connectée. Un test interdit désormais de la rouvrir dans l'UI. 88 tests Linux verts, dont deux nouveaux qui verrouillent l'absence du conseil inutile et la présence du geste utile. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -138,13 +138,31 @@ final class PolarPftpErrorTests: XCTestCase {
|
||||
func testUneMontreMuettePointeVersFlow() {
|
||||
let e = PolarPftpError.watchNotFound(30, vues: 3, sansPsFtp: 2, muettes: 1)
|
||||
XCTAssertTrue(e.description.contains("Polar Flow"))
|
||||
XCTAssertTrue(e.description.contains("occupé"))
|
||||
}
|
||||
|
||||
func testDesAppareilsSansPsFtpNommentLInconnueRestante() {
|
||||
/// ⚠️ Le message conseillait « fermer complètement l'app Polar Flow ».
|
||||
/// Mesuré faux le 31/08/2026 : la montre affichait « connexion impossible »
|
||||
/// pendant que les réglages iOS la disaient toujours connectée à Flow. iOS
|
||||
/// maintient le lien d'un accessoire appairé, app fermée ou non.
|
||||
func testLeMessageNeConseillePlusDeFermerLApp() {
|
||||
let e = PolarPftpError.watchNotFound(30, vues: 3, sansPsFtp: 2, muettes: 1)
|
||||
XCTAssertTrue(e.description.contains("fermer l'app n'y change rien"),
|
||||
"le geste inutile doit être explicitement écarté")
|
||||
XCTAssertTrue(e.description.contains("Redémarrer la montre"),
|
||||
"le geste qui libère réellement le canal doit être donné")
|
||||
XCTAssertTrue(e.description.contains("câble"),
|
||||
"le chemin fiable doit être rappelé")
|
||||
}
|
||||
|
||||
/// L'« inconnue restante » a été levée le 31/08 : la montre expose bien
|
||||
/// PsFTP quand elle est connectée. Le message ne doit plus la présenter
|
||||
/// comme une question ouverte.
|
||||
func testDesAppareilsSansPsFtpNePresententPlusUneInconnue() {
|
||||
let e = PolarPftpError.watchNotFound(30, vues: 4, sansPsFtp: 4, muettes: 0)
|
||||
XCTAssertTrue(e.description.contains("n'expose PsFTP"))
|
||||
XCTAssertTrue(e.description.contains("4 appareil"))
|
||||
XCTAssertFalse(e.description.contains("inconnue"),
|
||||
"la question a été tranchée, ne pas la rouvrir dans l'UI")
|
||||
}
|
||||
|
||||
func testLesTroisMessagesSontDistincts() {
|
||||
|
||||
Reference in New Issue
Block a user