Projet mkd/mkddocu.sh

De Wiki EELL.

(Différences entre les versions)
m (La commande shell : copie)
m (NEWS : Retouches)
 
(17 versions intermédiaires masquées)
Ligne 6 : Ligne 6 :
=== Document initial ===
=== Document initial ===
-
{{Boîte déroulante/début|titre=doc mkddocu.sh créé le 28 février 2014}}
+
{{Boîte déroulante/début|titre=Documentation du manuel de mkddocu.sh (créé le 24 février 2014)}}
<pre style="color:blue">
<pre style="color:blue">
#!/bin/bash
#!/bin/bash
Ligne 80 : Ligne 80 :
=== La commande shell ===
=== La commande shell ===
-
{{Boîte déroulante/début|titre=commande shell mkddocu.sh créé le 28 février 2014}}
+
{{Boîte déroulante/début|titre=Fichier de la commande shell mkddocu.sh (créé le 24 février 2014)}}
<pre style="color:black">
<pre style="color:black">
#!#/bin/bash
#!#/bin/bash
Ligne 257 : Ligne 257 :
=== Directive des tests ===
=== Directive des tests ===
-
{{Boîte déroulante/début|titre=doc mkddocu.sh créé le 28 février 2014}}
+
{{Boîte déroulante/début|titre=Directive des tests (mkddocu.sh créé le 24 février 2014)}}
-
<pre style="color:blue>
+
<pre style="color:orange">
-
 
+
#T Fichier mkddocu.sh
 +
#T -----------------------------------------------------------------------------
 +
#T Tests : Ne peut fonctionner que si la commande mkd est installée.
 +
#T
 +
#T Test unitaire :
 +
#T ---------------
 +
#T Renommer mkddocu mkddocu.sh ou .csh
 +
#T Editer le fichier mkddocu.sh et modifier la valeur de BACKUPSMAX limiter
 +
#T cette valeur à 3 (4 sauvegardes indicées)
 +
#T
 +
#T La commande s'autoteste
 +
#T 1. Lancer 4 fois la commande ./mkddoccu (sans paramètre)
 +
#T 2. Vérifier la commande de boucle à chaque fois, elle doit incrémenter les
 +
#T    répertoires de projets project (le dernier), puis project.1, etc.
 +
#T    Après project.3 on doit vous demander si vous désirez préserver ces
 +
#T    fichiers dans un répertoire .Backups. Répondez oui : 'y' (yes)
 +
#T 3. Vérifier que le fichier .prj prend bien en charge tous les fichiers de
 +
#T    langages de programmation de la commande mkd. Pour cela il faut évidemment
 +
#T    disposer des fichiers nécessaires. On peut en trouver sur le site EELL
 +
#T    http://edeulo.free.fr/wiki/index.php/Projet_mkd/Fichiers_en_développement
 +
#T    Les fichiers en développement sont accompagnés de leurs tests unitaires,
 +
#T    notamment le fichier find.inc.c très sollicité par la commande mkddocu.
 +
#T    Trouver des exemples aussi sur wikipedia, wikibooks.
 +
#T 4. Essayer les commandes : (dans un 'Terminal' ou une 'Konsoke')
 +
#T    ./mkddocu.sh -s
 +
#T    ./mkddocu.sh mkddocu
 +
#T    ./mkddocu.sh mkddocu -s
 +
#T    ./mkddocu.sh -s mkddocu
 +
#T    Les commandes mkd ont été éprouvées par ailleurs. Vérifiez tout de même
 +
#T    que les fichiers générés sont bien conformes.
 +
#T 5. Vérifiez que les fichiers en langage C sont pris en compte quand ils sont
 +
#T    présents. les fichiers d'entête (.h) n'ont pas à être pris en compte.
 +
#T
 +
#T
 +
#T Tests d'intégration :
 +
#T ---------------------
 +
#T Pour ces tests il faut évidemment disposer de vrais fichiers de programmation
 +
#T dans différent langages mais cela a déjà été fait lors des tests
 +
#T d'intégration de la commande mkd.
 +
#T On peut trouver ces fichiers dans chaqu'un des fichiers de tests unitaires de
 +
#T la page wiki 'fichiers' en développement citée plus haut.
 +
#T
</pre>
</pre>
{{Boîte déroulante fin}}
{{Boîte déroulante fin}}
== Test des paramètres d'entrée ==
== Test des paramètres d'entrée ==
-
{{Boîte déroulante/début|titre=doc mkddocu.sh créé le 28 février 2014}}
+
{{Boîte déroulante/début|titre=Commande des tests des paramètre d'entrée de mkddocu.sh (créé le 24 février 2014)}}
-
<pre style="color:blue>
+
<pre style="color:blue">
-
 
+
#!/bin/bash
 +
#Fichier Tests_paramètre
 +
let i=1          #P compteur
 +
str="false"      #P false ou true
 +
project="project" #P nom du fichier de projet .prj
 +
#
 +
#P -----------------------------------------------------------------------------
 +
#P Gestion des paramètres d'entrée
 +
#
 +
if test $1; then
 +
  if test $2; then
 +
      echo " Deux paramètres "
 +
      echo " Paramètres : 1=$1, 2=$2 "
 +
      if test $1 && [ $1 != "-s" ] ;
 +
      then
 +
        project=$1;
 +
        if [ $2 = "-s" ]; then str="true"; fi # Vérif que c'est bien -s
 +
      else
 +
        if [ $1 = "-s" ]; then str="true"; project=$2; fi
 +
      fi
 +
  else
 +
      echo " Un deul paramètre : $1 "
 +
      if test $1 && [ $1 != "-s" ] ; then project=$1; fi
 +
      if [ $1 = "-s" ]; then str="true"; fi
 +
  fi
 +
else echo " Pas de paramètre "
 +
fi
 +
echo " Projet : $project "
 +
echo " Strings ? : $str "
</pre>
</pre>
{{Boîte déroulante fin}}
{{Boîte déroulante fin}}
== Test de la boucle des sauvegardes ==
== Test de la boucle des sauvegardes ==
-
{{Boîte déroulante/début|titre=doc mkddocu.sh créé le 28 février 2014}}
+
{{Boîte déroulante/début|titre=Commande des tests de boucle mkddocu.sh (créé le 28 février 2014)}}
-
<pre style="color:blue>
+
<pre style="color:blue">
 +
#!/bin/bash
 +
# Tests_boucle_dans_mkddocu
 +
#
 +
# Help
 +
#
 +
if test $1; then
 +
  if [ $1 = "?" ]
 +
  then
 +
      echo " Syntax : "
 +
      echo " mkddocu [target_dir]"
 +
      echo "    → without target_dir, name of target dir is 'project' "
 +
      echo " mkddocu ? for help"
 +
      exit 1 # Used by
 +
  fi
 +
fi
 +
#
 +
# Target dir
 +
#
 +
BACKUPSMAX=3 #
 +
let i=1
 +
if test $1; then project=$1; else project="project"; fi
 +
#  then
 +
  # echo "Test files : $project.* for backup" #T debug
 +
  # echo "BACKUPSMAX=$BACKUPSMAX" #T
 +
  while ((i<=BACKUPSMAX));
 +
  do
 +
      # echo "$i" #T
 +
      if test -d $project.$i #T
 +
      then
 +
        # echo "$project.$i exist" #T
 +
#####################
 +
        if [ $i = $BACKUPSMAX ]
 +
        then
 +
            echo "Last backup $project.$i Make backup in backup dir, yes ?"
 +
            echo -n "your choice : y ? "
 +
            read char
 +
            if test $char &&  [ $char = "y" ]
 +
            then
 +
              echo "create Backups dir if not exist"
 +
              install -d Backups
 +
              # echo "cp -rf $project.* Backups/." #T
 +
              cp -rf  $project.* Backups/.
 +
              rm -rf $project.*
 +
              clear
 +
              echo "Files in dir Backups"
 +
              ls -al Backups
 +
            else
 +
              echo "exit -1"
 +
              exit -1
 +
            fi
 +
        # else echo "Continue"
 +
        fi
 +
#####################
 +
      else
 +
        # echo "$project.$i does not exist" #T
 +
        if test -d $project
 +
        then
 +
            # echo "$project exist and move dir $project to $project.$i"; #T
 +
            mv $project $project.$i
 +
        fi
 +
        #break
 +
      fi
 +
      let i++
 +
      #break
 +
  done
 +
rm -Rf $project
 +
install -d $project
 +
# echo "Projet actuel : $project"
 +
echo "blabla" > $project/fichiertest
 +
echo ""
 +
# ls
</pre>
</pre>
{{Boîte déroulante fin}}
{{Boîte déroulante fin}}
== Test de la reconnaissance des fichiers C ==
== Test de la reconnaissance des fichiers C ==
-
{{Boîte déroulante/début|titre=doc mkddocu.sh créé le 28 février 2014}}
+
{{Boîte déroulante/début|titre=Commande des tests de reconnaissance des fichiers C (mkddocu.sh créé le 24 février 2014)}}
-
<pre style="color:blue>
+
<pre style="color:blue">
-
 
+
#!/bin/bash
 +
#Fichier Tests-C
 +
if test -r *.c* ; then cfiles="true"; echo " Il y a des fichiers c* "; else echo " Pas de c*"; fi
 +
if test -r *.C* ; then cfiles="true"; echo " Il y a des fichiers C* "; else echo " Pas de C*"; fi
 +
if test $cfiles ; then echo " Il y a des fichiers c* ou C* "; else echo " Pas de c* ni C*"; fi
</pre>
</pre>
{{Boîte déroulante fin}}
{{Boîte déroulante fin}}
== Analyse globale ==
== Analyse globale ==
 +
 +
Les tests ayant été effectués au fur et à mesure il n'y a rien de spécial.
 +
 +
L'autotest a été pratiqué avec les commandes :
 +
* mkddocu (sans paramètre)
 +
* mkddocu mkddocu
 +
* mkddocu mkddocu -s
 +
* mkddocu -s mkddocu
 +
* mkddocu -s
 +
 +
Le test a aussi été effectué avec les fichiers des sources de mkd
 +
 +
Il n'y a pas eu d'autre test à ce jour (26 février 2014)
 +
 +
Cette commande reste en phase de tests ...
 +
 +
--[[Utilisateur:Eudelo|edeulo]] 26 février 2014 à 16:29 (UTC)
 +
 +
== NEWS ==
 +
 +
La version beta 140515 (7 avril 2014) corrige les inconvénients des versions précédentes.
 +
# '''Les traductions sont pleinement opérationnelles'''. Un fichier .po est disponible dans les sources.
 +
# '''L'obligation d'entrer un paramètre''' évite les exécutions non désirée.
 +
 +
=== Source des versions beta ===
 +
Downloads [http://edeulo.free.fr/pub/downloads_sources/mkd sources]
 +
 +
=== Distributions debian version beta ===
 +
Downloads [http://edeulo.free.fr/pub/mkd/dist dist]
 +
 +
[[Catégorie:Mkd]]

Version actuelle en date du 17 avril 2014 à 12:32

Cette page n'est pas finie. Veuillez considérer le plan et le contenu comme incomplets et en préparation, temporaires et sujets à caution. Si vous souhaitez participer, il vous est recommandé de consulter sa page de discussion au préalable.

Retour aux fichiers en développement →

Sommaire

mkddocu.sh

Dans sa version finale le fichier sera renommé mkddocu et copié dans les répertoires /usr/bin (ou /usr/local/bin)

Document initial

La commande shell

Directive des tests

Test des paramètres d'entrée

Test de la boucle des sauvegardes

Test de la reconnaissance des fichiers C

Analyse globale

Les tests ayant été effectués au fur et à mesure il n'y a rien de spécial.

L'autotest a été pratiqué avec les commandes :

  • mkddocu (sans paramètre)
  • mkddocu mkddocu
  • mkddocu mkddocu -s
  • mkddocu -s mkddocu
  • mkddocu -s

Le test a aussi été effectué avec les fichiers des sources de mkd

Il n'y a pas eu d'autre test à ce jour (26 février 2014)

Cette commande reste en phase de tests ...

--edeulo 26 février 2014 à 16:29 (UTC)

NEWS

La version beta 140515 (7 avril 2014) corrige les inconvénients des versions précédentes.

  1. Les traductions sont pleinement opérationnelles. Un fichier .po est disponible dans les sources.
  2. L'obligation d'entrer un paramètre évite les exécutions non désirée.

Source des versions beta

Downloads sources

Distributions debian version beta

Downloads dist
Outils personnels