Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: sapito169 en 18 Julio 2019, 09:36 AM

Título: contribución pruebas unitarias asynchronas
Publicado por: sapito169 en 18 Julio 2019, 09:36 AM
esta es una contribución pequeña

Cuando haces prueba a código que es asynchrono junit  muestra mensaje inesperado y te manda al demonio mostrándote el dedo del medio como cuando le dices a la panchita que quieres hacer cosas indecorosas con ella

Este es un código de ejemplo de como hacer una prueba unitaria a código que es asynchrono

Código (java) [Seleccionar]

package testingasync;

import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import org.junit.Test;
import static org.junit.Assert.*;

public class asyn_gretting_should_Test {

   private static interface Callback<T> {
       void call(T t);
   }

   private static class AssynGreating {

       public void sayHi(String name, Callback<String> callback) {
           new Thread(() -> callback.call("hi " + name)).start();
       }
   }

   @Test
   public void say_hi() throws InterruptedException {
       CountDownLatch countDownLatch = new CountDownLatch(1);
       StringBuilder stringBuilder = new StringBuilder();
       new AssynGreating().sayHi("luis", (name) -> {
           stringBuilder.append(name);
           countDownLatch.countDown();
       });
       countDownLatch.await(1, TimeUnit.SECONDS);
       assertEquals("hi luis", stringBuilder.toString());
   }
}



pro favor den una respuesta aunque sea troll pero no me rachasen y no me respondan
Título: Re: contribución pruebas unitarias asynchronas
Publicado por: sapito169 en 18 Julio 2019, 19:01 PM
no me castigues con el látigo de tu indiferencia con una respuesta pasivo agresiva es suficiente