un outil de sondage - retour accueil
git clone git://bebou.netlib.re/kun
Log | Files | Refs | README |
commit 8048f56db89398a2df34061ed06f91db7f55a2a6 parent b9b0d948b7ccbd28ed25debbf07206ff94ecadac Auterice: Arthur Pons <arthur.pons@unistra.fr> Date: Mon, 23 Sep 2024 17:26:29 +0200 Modification du calcul du nb réponses dans results Parce que wc ne compte que les retours à la ligne : https://www.pixelbeat.org/docs/coreutils-gotchas.html#wc a= echo $a | wc -l 1 Oui oui. J'ai de la chance d'avoir lu cet article par hasard y'a quelques mois. D'ailleurs j'ai pas tilté en lisant le nouveau fichier de référence poussé dans le commit précédent dans lequel il y avait : 1 mardi Les tests ça ne sert que lorsqu'on y prête attention Diffstat:
M | commands.sh | | | 7 | ++++--- |
M | tests/reference | | | 22 | +++++++++++----------- |
2 files changed, 15 insertions(+), 14 deletions(-)
diff --git a/commands.sh b/commands.sh @@ -113,9 +113,10 @@ results() { for answer in $(cat /tmp/kun.$id/question);do names=$(grep -l $answer /tmp/kun.$id/*-* | grep -v '/question:' | grep -v ^$) - [ -n "$names" ] \ - && names=$(echo "$names" | xargs -n1 basename | cut -d'-' -f1) - nb=$( echo "$names" | wc -l) + [ -z "$names" ] \ + && nb=0 \ + || { names=$(printf "%s\n" $names | xargs -n1 basename | cut -d'-' -f1) + nb=$(printf "%s\n" $names | wc -l); } printf "%d %s %s\n" $nb $answer $(echo "$names" | paste -s -d';' -) done | sort -t' ' -k1 -rn } diff --git a/tests/reference b/tests/reference @@ -16,10 +16,10 @@ find: ‘/tmp/kun.azdad/’: Aucun fichier ou dossier de ce type [91mSondage n'existe pas[0m ./kun.sh: 106: 1: missing parameter [91mSondage n'existe pas[0m -./kun.sh: 127: 1: missing parameter +./kun.sh: 128: 1: missing parameter [91mSondage n'existe pas[0m -./kun.sh: 143: 1: missing parameter -./kun.sh: 143: 2: missing parameter +./kun.sh: 144: 1: missing parameter +./kun.sh: 144: 2: missing parameter find: ‘/tmp/kun.azdazd/’: Aucun fichier ou dossier de ce type [91mazdazd n'a pas répondu à ce sondage[0m @@ -31,8 +31,8 @@ Un scénario : [92mlundi mercredi[0m 1 mercredi alice -1 mardi 1 lundi alice +0 mardi [91malice est déjà pris pour le sondage {id}[0m [92mréponse {id} de victor soumise au sondage {id}[0m [92mrecap de la réponse :[0m @@ -41,8 +41,8 @@ mercredi[0m [91mazdazd n'a pas répondu à ce sondage[0m mercredi 2 mercredi alice;victor -1 mardi 1 lundi alice +0 mardi alice victor [91mRéponse {id} n'existe pas[0m @@ -50,23 +50,23 @@ victor [92mrecap de la réponse :[0m [92m[0m 1 mercredi victor -1 mardi -1 lundi +0 mardi +0 lundi [92mModification de la réponse {id} de alice soumise au sondage {id}[0m [92mrecap de la réponse :[0m [92mlundi[0m 1 mercredi victor -1 mardi 1 lundi alice +0 mardi [92mModification de la réponse {id} de alice soumise au sondage {id}[0m [92mrecap de la réponse :[0m [92mmardi[0m 1 mercredi victor 1 mardi alice -1 lundi +0 lundi [92mQuestion {id} du sondage {id} supprimée[0m victor 1 mercredi victor -1 mardi -1 lundi +0 mardi +0 lundi [92mSondage {id} supprimé[0m