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
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
no me castigues con el látigo de tu indiferencia con una respuesta pasivo agresiva es suficiente