package vid.automation.test.infra; import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.NoSuchElementException; import vid.automation.test.Constants; import java.util.concurrent.TimeUnit; import java.util.function.Predicate; public class Wait { public static boolean byText(String text) { return GeneralUIUtils.findAndWaitByText(text, Constants.generalTimeout); } public static boolean waitFor(Predicate predicate, T input, int numOfRetries, int interval, TimeUnit intervalUnit) { for (int i=0; i boolean waitFor(Predicate predicate, T input, int numOfRetries, int interval) { return waitFor(predicate, input, numOfRetries, interval, TimeUnit.SECONDS); } public static boolean waitByClassAndText(String className, String text, int timeoutInSeconds) { return waitFor((x->Get.byClassAndText(className,text)!=null),null, timeoutInSeconds, 1); } public static boolean waitByTestId(String dataTestId, int timeoutInSeconds) { return waitFor((x->Get.byTestId(dataTestId)!=null),null, timeoutInSeconds, 1); } public static void angularHttpRequestsLoaded() { JavascriptExecutor js = (JavascriptExecutor) GeneralUIUtils.getDriver(); for (int i=0; i