systemadmin.es > Gestión de cofiguración > beaker: Comprobar contenido de fichero

beaker: Comprobar contenido de fichero

En el caso que para tests de aceptación mediante beaker necesitemos comprobar el contenido de un fichero deberemos hacerlo mediante la descripción de dicho fichero. Vamos a ver un ejemplo:

Supongamos que queremos verificar cómo se genera el context.xml que un tomcat, deberemos indicar que se trata de un fichero y las distintas partes que componen su contenido, por ejemplo:

    describe file("/opt/tomcat-8080/conf/context.xml") do
      it { should be_file }
      its(:content) { should match 'sessionCookiePath="/"' }
      its(:content) { should match 'antiJARLocking="true"' }
      its(:content) { should match 'antiResourceLocking="true"' }
      its(:content) { should match '<WatchedResource>WEB-INF/web.xml</WatchedResource>' }
      its(:content) { should match '<Manager pathname="" />' }
    end

Cuando lo lancemos veremos las diferentes pruebas que se hacen sobre dicho fichero y cual ha ido mal (si alguna va mal):

(...)
centos-6-x64 executed in 15.52 seconds

    should work with no errors

    File "/opt/tomcat-8080/conf/context.xml"

centos-6-x64 13:12:51$ /bin/sh -c test\ -f\ /opt/tomcat-8080/conf/context.xml

centos-6-x64 executed in 0.01 seconds

      should be file

      content

centos-6-x64 13:12:51$ /bin/sh -c cat\ /opt/tomcat-8080/conf/context.xml\ 2\>\ /dev/null\ \|\|\ echo\ -n

  <?xml version="1.0" encoding="utf-8"?>

  <Context sessionCookiePath="/" antiJARLocking="true" antiResourceLocking="true">

      <WatchedResource>WEB-INF/web.xml</WatchedResource>

      <Manager pathname="" />

  </Context>

centos-6-x64 executed in 0.04 seconds

        should match "sessionCookiePath=\"/\""

      content

        should match "antiJARLocking=\"true\""

      content

        should match "antiResourceLocking=\"true\""

      content

        should match "<WatchedResource>WEB-INF/web.xml</WatchedResource>"

      content

        should match "<Manager pathname=\"\" />"
(...)

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>