pasosdeJesus/msip

View on GitHub
bin/copiaprueba.sh

Summary

Maintainability
Test Coverage
#!/bin/sh

sing1="$1"
if (test "$sing1" = "") then {
  echo "Falta singular de prueba origen como primer parámetro";
  exit 1;
} fi;
plural1="$2"
if (test "$plural1" = "") then {
  echo "Falta plural de prueba origen como segundo parámetro";
  exit 1;
} fi;
sing2="$3"
if (test "$sing2" = "") then {
  echo "Falta singular de prueba destino como tercer parámetro";
  exit 1;
} fi;
plural2="$4"
if (test "$plural2" = "") then {
  echo "Falta plural de prueba destino como cuarto parámetro";
  exit 1;
} fi;
que="$5"
if (test "$que" = "") then {
  echo "Falta que (model o controller) como quinto parámetro";
  exit 1;
} fi;

ruta="$6"
if (test "$ruta" = "") then {
  echo "No se especificó una ruta (e.g sip/admin) se supondrá que no hay";
} else {
  ruta="$ruta/"
} fi;



sing1min=`echo "$sing1" |  tr '[:upper:]' '[:lower:]'`
sing1may=`echo "$sing1" |  tr '[:lower:]' '[:upper:]'`
sing1cap=`echo "$sing1" |  awk '{ print toupper( substr( $0, 1, 1 ) ) tolower(substr( $0, 2 )); }'`

plural1min=`echo "$plural1" |  tr '[:upper:]' '[:lower:]'`
plural1may=`echo "$plural1" |  tr '[:lower:]' '[:upper:]'`
plural1cap=`echo "$plural1" |  awk '{ print toupper( substr( $0, 1, 1 ) ) tolower(substr( $0, 2 )); }'`

sing2min=`echo "$sing2" |  tr '[:upper:]' '[:lower:]'`
sing2may=`echo "$sing2" |  tr '[:lower:]' '[:upper:]'`
sing2cap=`echo "$sing2" |  awk '{ print toupper( substr( $0, 1, 1 ) ) tolower(substr( $0, 2 )); }'`

plural2min=`echo "$plural2" |  tr '[:upper:]' '[:lower:]'`
plural2may=`echo "$plural2" |  tr '[:lower:]' '[:upper:]'`
plural2cap=`echo "$plural2" |  awk '{ print toupper( substr( $0, 1, 1 ) ) tolower(substr( $0, 2 )); }'`

#echo "OJO plural1min=$plural1min"
#echo "OJO plural2min=$plural2min"

if (test "$que" = "controller") then {
  rutaorig="test/${que}s/${ruta}${plural1min}_${que}_test.rb"
  rutadest="test/${que}s/${ruta}${plural2min}${cont}_test.rb"
} else {
  rutaorig="test/${que}s/${ruta}${sing1min}_test.rb"
  rutadest="test/${que}s/${ruta}${sing2min}_test.rb"
} fi;

if (test ! -f "$rutaorig") then {
  echo "No se encontró archivo en ruta origen: '$rutaorig'";
  exit 1;
} fi;

if (test -f "$rutadest") then {
  echo "Se encontró un archivo en ruta destino: $rutadest";
  echo -n "Seguro desea sobreescribir? (s para sobreescribir): "
  read r
  if (test "$r" != "s") then {
    exit 1;
  } fi;
} fi;


echo "Archivo origen $rutaorig";

cat $rutaorig |\
  sed -e "s/$plural1min/$plural2min/g" | \
  sed -e "s/$sing1min/$sing2min/g" | \
  sed -e "s/$plural1cap/$plural2cap/g" | \
  sed -e "s/$sing1cap/$sing2cap/g" | \
  sed -e "s/$plural1may/$plural2may/g" | \
  sed -e "s/$sing1may/$sing2may/g" | \
  cat > $rutadest
echo "Creado $rutadest "