CardDavControllerTest.ktCardDavXmlUtils.appendMultiStatusStart() et appendMultiStatusEnd() — les constructeurs d'enveloppe XML pour les réponses multistatus WebDAV. Situé dans le package org.projectforge.web (tests de la couche web), faisant référence aux utilitaires carddav de la couche domaine.Ce test réside dans le package org.projectforge.web — la couche Wicket/web — et teste les utilitaires de génération XML importés depuis org.projectforge.carddav. Cela représente un test inter-couches : le contrôleur web utilise les utilitaires du domaine CardDAV pour générer des réponses XML destinées aux clients HTTP.
Ajoute l'ouverture d'un document XML multistatus WebDAV à un StringBuilder. Avec withXmlDeclaration=true (par défaut), produit :
<?xml version="1.0" encoding="UTF-8"?>
<d:multistatus xmlns:d="DAV:" xmlns:card="urn:ietf:params:xml:ns:carddav"
xmlns:cs="http://calendarserver.org/ns/" xmlns:me="http://me.com/_namespace/">
Sans déclaration (false) : omet la ligne de déclaration XML — utile lorsque le multistatus fait partie d'un document XML plus grand ou lorsque la déclaration est gérée ailleurs.
Ajoute la balise fermante </d:multistatus>. Extrêmement simple mais testé pour la complétude et la stabilité de l'API.
| Préfixe | URI | Standard |
|---|---|---|
| d | DAV: | RFC 4918 (WebDAV core) |
| card | urn:ietf:params:xml:ns:carddav | RFC 6352 (CardDAV) |
| cs | http://calendarserver.org/ns/ | Extensions Apple CalendarServer |
| me | http://me.com/_namespace/ | Espace de noms personnalisé Micromata |
Le test contient du code commenté qui testerait CardDavXmlWriter.appendPropfindContact() — une méthode pour générer des entrées de réponse PROPFIND pour des contacts individuels. Cela suggère que la génération de réponse PROPFIND pour les contacts était encore en développement ou en attente lors de la rédaction de ce test. Les objets User("kai") et Contact(42L, "Kai", "Reinhard", Date(1234567890)) sont construits mais l'assertion est commentée.
//Assertions.assertEquals(response, sb.toString()) fait référence à une variable response non définie — ce test est incomplet et représente un instantané d'un travail en cours, conservé pour sa valeur documentaire.L'emplacement dans projectforge-carddav/src/test/kotlin/org/projectforge/web/ avec le package org.projectforge.web est notable — il teste l'utilisation par la couche web des utilitaires CardDAV de la couche domaine. Le répertoire de test reflète la structure des packages de production, indiquant que le contrôleur web était testé séparément de la logique domaine.
868d6abb7 2025 -> 2026 63081666f En-têtes des fichiers sources : 2024 -> 2025. 0d7a81f91 WIP : Carddav 744d238de WIP : Carddav c4062ed97 WIP : Carddav 2ad0cfe66 WIP : Carddav b5d8f83c1 WIP : Carddav 953455ae5 WIP : Carddav