Escribir sus propias pruebas: Ejemplo 1

El siguiente código fuente es un ejemplo de una prueba básica que devuelve datos estáticos. La prueba aparece aquí como un ejemplo de la interfaz WMQTest.


/*
 * Material bajo licencia - Propiedad de IBM
 * 
 * 63H9336
 * (c) Copyright IBM Corp. 2005, 2020. Reservados todos los derechos.
 * 
 * Derechos restringidos a los usuarios de gobierno de EE.UU. -
 * Utilización, duplicación o divulgación restringida por el
 * GSA ADP Schedule Contract con IBM Corp.

 */


package com.ibm.mq.explorer.tests.sample;

/**
 * Prueba de ejemplo que se ejecuta desde una prueba adicional del árbol de pruebas estándar de WMQ
 */
public class WMQTestSimple extends WMQTest {
  
  /*
   * (non-Javadoc)
   * 
   * @see com.ibm.mq.explorer.tests.WMQTest#runTest(com.ibm.mq.explorer.tests.internal.actions.WMQTestEngine,
   * org.eclipse.core.runtime.IProgressMonitor, com.ibm.mq.explorer.ui.extensions.MQExtObject[],
   * java.lang.String)
   */  
   public void runTest(WMQTestEngine callback, IProgressMonitor guimonitor,
      MQExtObject[] contextObjects, TreeNode treenodeId) {

    // Empezar con la implementación predeterminada. Esto almacenará un
    // manejador en el motor de pruebas que será necesario cuando queramos
    // someter cualquier resultado al final de la prueba
    super.runTest(callback, guimonitor, contextObjects, treenodeId);

    // preparar espacio para almacenar los resultados de la prueba
    ArrayList testresults = new ArrayList();

    // inicializar la parte de barra de progreso de la GUI utilizada para mostrar el progreso (4 etapas)
    guimonitor.beginTask(getTestName(), 4);

    // Hacer un bucle 4 veces, aumentando el contador de progreso en 1 cada vez
    for (int k = 0; k < 4; k++) {
      try {
        // Suspender la ejecución durante unos instantes para que parezca que estamos haciendo algún trabajo
        Thread.sleep(900);
      }
      catch (InterruptedException e) {
      }

      // incrementar barra de progreso de GUI utilizada para mostrar el progreso
      guimonitor.worked(1);
    }

    // Crear un nuevo resultado de prueba y añadirlo a la matriz de lista de resultados
    testresults.add(new WMQTestResult(IMarker.SEVERITY_INFO, "EJEMPLO: ¡Nuestra prueba de adición ha funcionado!", //$NON-NLS-1$
        "Nombre de objeto", getTestSubCategory())); //$NON-NLS-1$

    //  empaquetar resultados y devolver - prueba completada.
    testComplete((WMQTestResult[]) testresults.toArray(new WMQTestResult[testresults.size()]));
  }
}