package com.plectix.simulator.injections; import java.util.Collection; import org.junit.Test; import com.plectix.simulator.interfaces.ObservableConnectedComponentInterface; import com.plectix.simulator.simulationclasses.injections.Injection; import com.plectix.simulator.simulationclasses.injections.LiftElement; import com.plectix.simulator.staticanalysis.Site; import com.plectix.simulator.util.Failer; import com.plectix.simulator.util.MessageConstructor; public class TestInjectionsLifts extends TestInjections { private final Failer failer = new Failer(); private boolean testInjectionLifts(Injection injection) { for (Site site : injection.getSiteList()) { boolean exists = false; for (LiftElement lift : site.getLift()) { if (lift.getInjection() == injection) { exists = true; break; } } if (!exists) { return false; } } return true; } @Test public void testAllInjections() { boolean fail = false; boolean temporaryFail = false; MessageConstructor mc = new MessageConstructor(); for (ObservableConnectedComponentInterface c : getInitializator() .getObservables()) { Collection<Injection> injectionsList = c.getInjectionsList(); for (Injection injection : injectionsList) { if (!testInjectionLifts(injection)) { temporaryFail = true; } } if (temporaryFail) { if (!fail) { fail = true; } mc.addValue(c.getName()); temporaryFail = false; } } if (fail) { failer.failOnMC(mc); } } }