1 package com.atlassian.pageobjects.elements.timeout;
2
3 /**
4 * <p>
5 * Enumeration of default timeout types in the elements.
6 *
7 * <p>
8 * <b>NOTE</b>: This enumeration should <b>NOT</b> be extended with further timeout types, unless it is a matter of
9 * <i>common</i> (as in: involving more than one developer) consensus that a new timeout type is necessary.
10 * Instead, use customized timeouts, if a particular test context requires timeout adjustments (to that end you may use
11 * {@link com.atlassian.pageobjects.elements.query.TimedQuery#by(long)}
12 * and {@link com.atlassian.pageobjects.elements.query.TimedQuery#by(long, java.util.concurrent.TimeUnit)}).
13 *
14 */
15 public enum TimeoutType
16 {
17 /**
18 * Default timeout value. Meant to be used in case there is no explicit timeout provided for a components requiring
19 * it.
20 *
21 */
22 DEFAULT,
23
24 /**
25 * Interval between consecutive attempts to evaluate state of a particular test components, used e.g. by timed
26 * conditions and queries. This is not really a timeout, but still has significant influence over how the timed
27 * operations are executed.
28 *
29 * @see com.atlassian.pageobjects.elements.query.TimedQuery
30 * @see com.atlassian.pageobjects.elements.query.PollingQuery
31 */
32 EVALUATION_INTERVAL,
33
34 /**
35 * Use for any actions executed by the test within the page UI, e.g. typing, clicking, moving mouse etc.
36 *
37 */
38 UI_ACTION,
39
40 /**
41 * Page load of an average product page.
42 *
43 */
44 PAGE_LOAD,
45
46 /**
47 * Page load of a slow page, e.g. Dashboard, pages for re-indexing products etc..
48 *
49 */
50 SLOW_PAGE_LOAD,
51
52 /**
53 * Dialog load time.
54 *
55 */
56 DIALOG_LOAD,
57
58 /**
59 * Load time of an UI-heavy components (e.g. drop-down, picker etc.)
60 *
61 */
62 COMPONENT_LOAD,
63
64 /**
65 * An AJAX-like action on the tested page, e.g. an asynchronous request, a dialog submit (without redirection) etc.
66 *
67 */
68 AJAX_ACTION
69 }