package com.sikulix.testrun;
import java.awt.Desktop;
import java.awt.event.KeyEvent;
import java.io.File;
import java.io.IOException;
import java.net.URI;
import org.sikuli.script.*;
import org.sikuli.basics.Debug;
import org.sikuli.basics.FileManager;
import org.sikuli.basics.HotkeyEvent;
import org.sikuli.basics.HotkeyListener;
import org.sikuli.basics.HotkeyManager;
import org.sikuli.basics.Settings;
public class TestRun {
static Screen s = new Screen();
static boolean shouldExit = false;
private static void p(String msg, Object... args) {
System.out.println(String.format(msg, args));
}
private static void terminate(int retVal, String msg, Object... args ) {
p(msg, args);
System.exit(retVal);
}
public static void main(String[] args) throws FindFailed, IOException {
Debug.on(3);
ImagePath.add(TestRun.class.getCanonicalName() + "/ImagesAPI.sikuli");
s.find("SikuliLogo");
s.highlight(-2);
}
public static void test1() {
ImagePath.add(TestRun.class.getCanonicalName() + "/ImagesAPI.sikuli");
File fResults = new File(System.getProperty("user.home"), "TestResults");
String fpResults = fResults.getPath();
FileManager.deleteFileOrFolder(fpResults);
fResults.mkdirs();
if (Settings.isMac()) {
App.focus("Safari");
} else {
App.focus("Google Chrome");
}
String raimanlogo = "raimanlogo";
Match mFound = null;
try {
if (null == s.exists(raimanlogo, 0)) {
Desktop.getDesktop().browse(new URI("http://sikulix.com"));
s.wait(raimanlogo, 10);
}
s.hover();
Region winBrowser = App.focusedWindow();
String image = "btnnightly";
mFound = winBrowser.exists(image);
if (null != mFound) {
p("mFound: %s", mFound);
p("mFound.Image: %s", mFound.getImage());
p("mFound.ImageFile: %s", mFound.getImageFilename());
winBrowser.click();
winBrowser.getLastScreenImageFile(fpResults, image + "screen.png");
} else {
terminate(1, "missing: %s", image);
System.exit(1);
}
image = "nightly";
mFound = winBrowser.exists(image, 10);
if (null != mFound) {
p("mFound: %s", mFound);
p("mFound.Image: %s", mFound.getImage());
p("mFound.ImageFile: %s", mFound.getImageFilename());
winBrowser.getLastScreenImageFile(fpResults, image + "screen.png");
} else {
terminate(1, "missing: %s", image);
}
} catch (Exception ex) {
terminate(1, "some problems");
}
s.write("#C.w");
s.wait(2f);
App.focus("NetBeans");
System.exit(1);
}
}