Trabe ya no escribe aquí. Puedes encontrarnos en nuestra publicación en Medium: medium.com/trabe.

4Trabes Historias de una empresa en 100 metros cuadrados

El blog de Trabe Soluciones

Play framework: fix para el módulo de Ivy

| | Comentarios

La versión 1.0 del módulo de Ivy tiene un pequeño bug que hace que los comandos Play de otros módulos no puedan ejecutarse. No voy a entrar en explicaciones, sólo os dejo el fix: tenéis que eliminar la última línea del fichero ${play.path}/modules/ivy-1.0/commans.py.

1
2
3
4
5
6
7
8
9
    print "\n"
    print "~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
    print "~ Application dependencies ~"
    print "~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
    for jar in os.listdir(os.path.join(application_path, 'lib')):
        print(jar)
    print "\n"

sys.exit(0)  # ¡Esta línea es maligna!

Maven a todo color

| | Comentarios

Hay una cosa que siempre me ha fastidiado de la salida que escupe maven al ejecutar los tests: nunca sé, así de un vistazo, si todo ha ido bien o si ha fallado algo. Así que tras googlear un poco me he topado con esto http://ju-n.net/colorize-maven-output.

Se trata de una función bash que utiliza sed para procesar la salida de maven y colorearla.

Para poder utilizarlo también con watchr (sobre el que David ha blogueado recientemente) hemos (gracias David) introducido un par de modificaciones en el script que aparece en el enlace anterior:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
  # aquí irían todos los exports de colores
  ...
  # hacemos un alias del comando sed que aparece en el enlace de más
  # arriba sin olvidarnos de resetear los estilos al final
  alias colorize-mvn-output='sed -e [...] && echo -ne ${RESET_FORMATTING}'

  mvn-color() {
      $(which mvn) $@ | colorize-mvn-output
  }
  alias mvn="mvn-color"

  mvn-watchr() {
      watchr $@ | colorize-mvn-output
  }

  # como usamos watchr para más cosas que ejecutar tests 
  # de maven, no creamos un alias que sobreescriba el comando 
  # watchr

Ahora, cuando hagamos directamente

1
$ mvn test

o bien utilicemos watchr llamando a

1
$ mvn-watchr path/to/script.file

obtendremos unos resultados muchos más coloridos.

Maven a todo color

Y con esto queda explicado mi extraño tweet.

Watchr aplicado: autotesting con Maven

| | Comentarios

Variante de la receta que os traje el otro día. Esta vez utilizando Maven en lugar de Ant. Sólo hay que modificar un poco el fichero de configuración de Watchr y listo.

1
2
3
4
5
6
7
8
9
10
watch( 'src/main/java/(.*)\.java' )  do |md|
    file = "#{md[1]}Test"
    test(file) if File.exists?("src/test/java/#{file}.java")
end

watch( 'src/test/java/(.*Test)\.java' ) { |md| test(md[1]) }

def test(file)
    system("mvn test -Dtest=#{file.gsub("/",".")}")
end