Aller au contenu

Module:Arbre/Test

Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 16 juin 2020 à 19:26 et modifiée en dernier par Orlodrim (discuter | contributions) (Nouvelle page : local p = require('Module:UnitTests') local arbre = require('Module:Arbre2') local function compareRenduArbre(lignes, resultatAttendu) p:preprocess_equals('{{#invoke:Arbre2|arbr…). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)

 Documentation[voir] [modifier] [historique] [purger]

Ce module permet d'afficher une liste à plusieurs niveaux sous forme d'arbre. À la place des puces présentes à gauche de chaque élément dans une liste classique, il affiche des lignes connectant chaque élément à ses descendants directs. Il permet par exemple de créer des arbres généalogiques ou des cladogrammes.

Ce module est destiné à être utilisé via le modèle {{Arbre}}.

Utilisation

Fonctions exportables :

  • arbre(frame) – fonction générant l'arbre. Prend un seul paramètre contenu, soit depuis l'appel du modèle, soit depuis l'appel du module (si le premier n'est pas présent − ce dernier cas est surtout utilisable pour du test). Pour les tests, accepte un paramètre templatestyles. La valeur non désactive l'inclusion de la balise <templatestyles> dans le rendu.

Exemples

La syntaxe de l'arbre est une liste à puce, c'est-à-dire avec un ou plusieurs * en début de ligne.

Note : le module conserve telles quelles toutes les lignes qui ne commencent pas par « * » ainsi que les lignes vides.

Exemple (note : ici il s'agit d'un appel direct au module, le paramètre vient de l'appel au modèle, normalement) :

{{#invoke:Arbre|arbre|contenu=
* ''[[Panthera]]''
**** ''[[Panthera leo]]'' - Lion
**** ''[[Panthera pardus]]'' - Léopard
*** ''[[Panthera onca]]'' - Jaguar
**
***  ''[[Panthera tigris]]'' - Tigre
*** ''[[Panthera uncia]]'' - Panthère des neiges ou once
}}

Et le résultat :

Tests

Voir Discussion module:Arbre/Test

local p = require('Module:UnitTests')
local arbre = require('Module:Arbre2')

local function compareRenduArbre(lignes, resultatAttendu)
	p:preprocess_equals('{{#invoke:Arbre2|arbre|templatestyles=non|\n' .. table.concat(lignes, '\n') .. '}}',
	                    '<div class="treeview">\n*a\n**<li class="lastline ">b</div>')
end

function p:test_ajouteEmbranchements()
	compareRenduArbre({'*a', '**b'}, {'*a', '**<li class="lastline"> b'})
end

return p