package test; import java.util.ArrayList; import java.util.List; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertTrue; import impl.Afficheur; import impl.Canal; import impl.CapteurImpl; import impl.DiffusionEpoque; import impl.Scheduler; public class TestAlgoDiffusionEpoq { static int NB_CANAUX = 3; public static List[] rEpoq; @BeforeAll public static void testAtom() throws InterruptedException{ ArrayList[] r = new ArrayList[NB_CANAUX]; for(int i = 0; i(); } Afficheur[] a = new Afficheur[NB_CANAUX]; Scheduler scheduler = new Scheduler(NB_CANAUX); CapteurImpl c = new CapteurImpl(); DiffusionEpoque algo = new DiffusionEpoque(); algo.capteur = c; c.setAlgoDiffusion(algo); for(int i = 0; i future = clock.scheduleAtFixedRate(() -> c.tick(), 0, 500, TimeUnit.MILLISECONDS); Thread.sleep(10000); System.out.println("STOP"); System.out.println("waitting for lasts display..."); future.cancel(false); Thread.sleep(3100); //3000ms max + 100ms de marge clock.shutdown(); //Thread.sleep(1500); for(int i = 0; ivalTest; valTest=rEpoq[i].get(j); } System.out.println(" "); } assertTrue(r); } }