1 package com.atlassian.selenium.visualcomparison;
2
3 import com.atlassian.selenium.visualcomparison.utils.ScreenResolution;
4
5 public interface VisualComparableClient
6 {
7
8 public void captureEntirePageScreenshot (String filePath);
9
10 public ScreenElement getElementAtPoint(int x, int y);
11
12 /**
13 * Execute a script in the client.
14 * @param command a string of javascript to send to the client.
15 * @deprecated You should use {@link VisualComparableClient#execute(String, Object...)} instead.
16 */
17 @Deprecated
18 public void evaluate (String command);
19
20 /**
21 * Execute a script in the client and return the evaluated result.
22 * @param command a string of javascript to send to the client.
23 * @param arguments additional arguments to provide to the script.
24 * @return the evaluated result of the javascript.
25 */
26 public Object execute (String command, Object... arguments);
27
28 public boolean resizeScreen (ScreenResolution resolution, boolean refreshAfterResize);
29
30 public void refreshAndWait ();
31
32 /**
33 * Wait until all active jQuery AJAX queries have returned -- i.e., no AJAX queries are active.
34 * @param waitTimeMillis the time to wait for everything to finish.
35 * @return true if no AJAX query is active, false otherwise.
36 */
37 public boolean waitForJQuery (long waitTimeMillis);
38 }