1 package com.atlassian.selenium.mock;
2
3 import com.atlassian.selenium.Browser;
4 import com.atlassian.selenium.SeleniumClient;
5 import com.atlassian.selenium.visualcomparison.ScreenElement;
6 import com.atlassian.selenium.visualcomparison.utils.ScreenResolution;
7 import com.atlassian.webtest.ui.keys.KeyEventType;
8
9 import java.util.ArrayList;
10 import java.util.Arrays;
11 import java.util.Collection;
12 import java.util.HashMap;
13 import java.util.List;
14 import java.util.Map;
15
16
17
18
19
20
21
22
23
24
25 public class MockSeleniumClient implements SeleniumClient
26 {
27 private final List<String> presentElementLocators = new ArrayList<String>();
28
29 private final Map<String,String> scripts = new HashMap<String,String>();
30 private String unmatchedScriptResult;
31 private final List<String> executedScripts = new ArrayList<String>();
32
33 public void open(final String url)
34 {
35 }
36
37 public void openWindow(final String s, final String s1)
38 {
39 }
40
41 public void selectWindow(final String s)
42 {
43 }
44
45 public void selectPopUp(final String s)
46 {
47 }
48
49 public void deselectPopUp()
50 {
51 }
52
53 public void selectFrame(final String s)
54 {
55 }
56
57 public boolean getWhetherThisFrameMatchFrameExpression(final String s, final String s1)
58 {
59 return false;
60 }
61
62 public boolean getWhetherThisWindowMatchWindowExpression(final String s, final String s1)
63 {
64 return false;
65 }
66
67 public void waitForPopUp(final String s, final String s1)
68 {
69 }
70
71 public void chooseCancelOnNextConfirmation()
72 {
73 }
74
75 public void chooseOkOnNextConfirmation()
76 {
77 }
78
79 public void answerOnNextPrompt(final String s)
80 {
81 }
82
83 public void goBack()
84 {
85 }
86
87 public void refresh()
88 {
89 }
90
91 public void close()
92 {
93 }
94
95 public boolean isAlertPresent()
96 {
97 return false;
98 }
99
100 public boolean isPromptPresent()
101 {
102 return false;
103 }
104
105 public boolean isConfirmationPresent()
106 {
107 return false;
108 }
109
110 public String getAlert()
111 {
112 return null;
113 }
114
115 public String getConfirmation()
116 {
117 return null;
118 }
119
120 public String getPrompt()
121 {
122 return null;
123 }
124
125 public String getLocation()
126 {
127 return null;
128 }
129
130 public String getTitle()
131 {
132 return null;
133 }
134
135 public String getBodyText()
136 {
137 return null;
138 }
139
140 public String getValue(final String s)
141 {
142 return null;
143 }
144
145 public String getText(final String s)
146 {
147 return null;
148 }
149
150 public void highlight(final String s)
151 {
152 }
153
154 public String getEval(final String script)
155 {
156 executedScripts.add(script);
157 String result = scripts.get(script);
158 if (result != null)
159 {
160 return result;
161 }
162 return unmatchedScriptResult;
163 }
164
165 public MockSeleniumClient addScriptResult(String script, String result)
166 {
167 scripts.put(script, result);
168 return this;
169 }
170
171 public MockSeleniumClient genericScriptResult(String result)
172 {
173 this.unmatchedScriptResult = result;
174 return this;
175 }
176
177 public List<String> executedScripts()
178 {
179 return new ArrayList<String>(executedScripts);
180 }
181
182 public boolean isChecked(final String s)
183 {
184 return false;
185 }
186
187 public String getTable(final String s)
188 {
189 return null;
190 }
191
192 public String[] getSelectedLabels(final String s)
193 {
194 return new String[0];
195 }
196
197 public String getSelectedLabel(final String s)
198 {
199 return null;
200 }
201
202 public String[] getSelectedValues(final String s)
203 {
204 return new String[0];
205 }
206
207 public String getSelectedValue(final String s)
208 {
209 return null;
210 }
211
212 public String[] getSelectedIndexes(final String s)
213 {
214 return new String[0];
215 }
216
217 public String getSelectedIndex(final String s)
218 {
219 return null;
220 }
221
222 public String[] getSelectedIds(final String s)
223 {
224 return new String[0];
225 }
226
227 public String getSelectedId(final String s)
228 {
229 return null;
230 }
231
232 public boolean isSomethingSelected(final String s)
233 {
234 return false;
235 }
236
237 public String[] getSelectOptions(final String s)
238 {
239 return new String[0];
240 }
241
242 public String getAttribute(final String s)
243 {
244 return null;
245 }
246
247 public boolean isTextPresent(final String s)
248 {
249 return false;
250 }
251
252
253 public boolean isElementPresent(String elemLocator)
254 {
255 return presentElementLocators.contains(elemLocator);
256 }
257
258 public MockSeleniumClient addPresentElements(String... elements)
259 {
260 this.presentElementLocators.addAll(Arrays.asList(elements));
261 return this;
262 }
263
264 public boolean isVisible(final String s)
265 {
266 return false;
267 }
268
269 public boolean isEditable(final String s)
270 {
271 return false;
272 }
273
274 public String[] getAllButtons()
275 {
276 return new String[0];
277 }
278
279 public String[] getAllLinks()
280 {
281 return new String[0];
282 }
283
284 public String[] getAllFields()
285 {
286 return new String[0];
287 }
288
289 public String[] getAttributeFromAllWindows(final String s)
290 {
291 return new String[0];
292 }
293
294 public void dragdrop(final String s, final String s1)
295 {
296 }
297
298 public void setMouseSpeed(final String s)
299 {
300 }
301
302 public Number getMouseSpeed()
303 {
304 return null;
305 }
306
307 public void dragAndDrop(final String s, final String s1)
308 {
309 }
310
311 public void dragAndDropToObject(final String s, final String s1)
312 {
313 }
314
315 public void windowFocus()
316 {
317 }
318
319 public void windowMaximize()
320 {
321 }
322
323 public String[] getAllWindowIds()
324 {
325 return new String[0];
326 }
327
328 public String[] getAllWindowNames()
329 {
330 return new String[0];
331 }
332
333 public String[] getAllWindowTitles()
334 {
335 return new String[0];
336 }
337
338 public String getHtmlSource()
339 {
340 return null;
341 }
342
343 public void setCursorPosition(final String s, final String s1)
344 {
345 }
346
347 public Number getElementIndex(final String s)
348 {
349 return null;
350 }
351
352 public boolean isOrdered(final String s, final String s1)
353 {
354 return false;
355 }
356
357 public Number getElementPositionLeft(final String s)
358 {
359 return null;
360 }
361
362 public Number getElementPositionTop(final String s)
363 {
364 return null;
365 }
366
367 public Number getElementWidth(final String s)
368 {
369 return null;
370 }
371
372 public Number getElementHeight(final String s)
373 {
374 return null;
375 }
376
377 public Number getCursorPosition(final String s)
378 {
379 return null;
380 }
381
382 public String getExpression(final String s)
383 {
384 return null;
385 }
386
387 public Number getXpathCount(final String s)
388 {
389 return null;
390 }
391
392 public Number getCssCount(String css)
393 {
394 return null;
395 }
396
397 public void assignId(final String s, final String s1)
398 {
399 }
400
401 public void allowNativeXpath(final String s)
402 {
403 }
404
405 public void ignoreAttributesWithoutValue(final String s)
406 {
407 }
408
409 public void waitForCondition(final String s, final String s1)
410 {
411 }
412
413 public void setTimeout(final String s)
414 {
415 }
416
417 public void waitForPageToLoad(final String s)
418 {
419 }
420
421 public void waitForFrameToLoad(final String s, final String s1)
422 {
423 }
424
425 public String getCookie()
426 {
427 return null;
428 }
429
430 public String getCookieByName(final String s)
431 {
432 return null;
433 }
434
435 public boolean isCookiePresent(final String s)
436 {
437 return false;
438 }
439
440 public void createCookie(final String s, final String s1)
441 {
442 }
443
444 public void deleteCookie(final String s, final String s1)
445 {
446 }
447
448 public void deleteAllVisibleCookies()
449 {
450 }
451
452 public void setBrowserLogLevel(final String s)
453 {
454 }
455
456 public void runScript(final String s)
457 {
458 }
459
460 public void addLocationStrategy(final String s, final String s1)
461 {
462 }
463
464 public void captureEntirePageScreenshot(final String s, final String s1)
465 {
466 }
467
468 public void rollup(final String s, final String s1)
469 {
470 }
471
472 public void addScript(final String s, final String s1)
473 {
474 }
475
476 public void removeScript(final String s)
477 {
478 }
479
480 public void useXpathLibrary(final String s)
481 {
482 }
483
484 public void setContext(final String s)
485 {
486 }
487
488 public void attachFile(final String s, final String s1)
489 {
490 }
491
492 public void captureScreenshot(final String s)
493 {
494 }
495
496 public String captureScreenshotToString()
497 {
498 return null;
499 }
500
501 public String captureNetworkTraffic(final String s)
502 {
503 return null;
504 }
505
506 public void addCustomRequestHeader(final String s, final String s1)
507 {
508 }
509
510 public String captureEntirePageScreenshotToString(final String s)
511 {
512 return null;
513 }
514
515 public void shutDownSeleniumServer()
516 {
517 }
518
519 public String retrieveLastRemoteControlLogs()
520 {
521 return null;
522 }
523
524 public void keyDownNative(final String s)
525 {
526 }
527
528 public void keyUpNative(final String s)
529 {
530 }
531
532 public void keyPressNative(final String s)
533 {
534 }
535
536 public void openNoWait(final String url)
537 {
538 }
539
540 public void open(final String url, final long timeoutMillis)
541 {
542 }
543
544 public void waitForPageToLoad(final long timeoutMillis)
545 {
546 }
547
548 public void waitForPageToLoad()
549 {
550 }
551
552 public void waitForCondition(final String javascript)
553 {
554 }
555
556 public void waitForCondition(final String javascript, final long timeoutMillis)
557 {
558 }
559
560 public void waitForAjaxWithJquery()
561 {
562 }
563
564 public void waitForAjaxWithJquery(final long timeoutMillis)
565 {
566 }
567
568 public void click(final String locator, final boolean waitForPageToLoad)
569 {
570 }
571
572 public void submit(final String form, final boolean waitForPageToLoad)
573 {
574 }
575
576 public void click(final String locator, final long timeoutMillis)
577 {
578 }
579
580 public void clickAndWaitForAjaxWithJquery(final String locator)
581 {
582 }
583
584 public void clickAndWaitForAjaxWithJquery(final String locator, final long timeoutMillis)
585 {
586 }
587
588 public void submit(final String form, final long timeoutMillis)
589 {
590 }
591
592 public void keyPress(final String locator, final String key)
593 {
594 }
595
596 public void shiftKeyDown()
597 {
598 }
599
600 public void shiftKeyUp()
601 {
602 }
603
604 public void metaKeyDown()
605 {
606 }
607
608 public void metaKeyUp()
609 {
610 }
611
612 public void altKeyDown()
613 {
614 }
615
616 public void altKeyUp()
617 {
618 }
619
620 public void controlKeyDown()
621 {
622 }
623
624 public void controlKeyUp()
625 {
626 }
627
628 public void keyDown(final String s, final String s1)
629 {
630 }
631
632 public void keyUp(final String s, final String s1)
633 {
634 }
635
636 public void mouseOver(final String s)
637 {
638 }
639
640 public void mouseOut(final String s)
641 {
642 }
643
644 public void mouseDown(final String s)
645 {
646 }
647
648 public void mouseDownRight(final String s)
649 {
650 }
651
652 public void mouseDownAt(final String s, final String s1)
653 {
654 }
655
656 public void mouseDownRightAt(final String s, final String s1)
657 {
658 }
659
660 public void mouseUp(final String s)
661 {
662 }
663
664 public void mouseUpRight(final String s)
665 {
666 }
667
668 public void mouseUpAt(final String s, final String s1)
669 {
670 }
671
672 public void mouseUpRightAt(final String s, final String s1)
673 {
674 }
675
676 public void mouseMove(final String s)
677 {
678 }
679
680 public void mouseMoveAt(final String s, final String s1)
681 {
682 }
683
684 public void type(final String s, final String s1)
685 {
686 }
687
688 public void typeKeys(final String s, final String s1)
689 {
690 }
691
692 public void setSpeed(final String s)
693 {
694 }
695
696 public String getSpeed()
697 {
698 return null;
699 }
700
701 public String getLog()
702 {
703 return null;
704 }
705
706 public void check(final String s)
707 {
708 }
709
710 public void uncheck(final String s)
711 {
712 }
713
714 public void select(final String s, final String s1)
715 {
716 }
717
718 public void addSelection(final String s, final String s1)
719 {
720 }
721
722 public void removeSelection(final String s, final String s1)
723 {
724 }
725
726 public void removeAllSelections(final String s)
727 {
728 }
729
730 public void submit(final String s)
731 {
732 }
733
734 public void open(final String s, final String s1)
735 {
736 }
737
738 public void typeWithFullKeyEvents(final String locator, final String string, final boolean reset)
739 {
740 }
741
742 public void typeWithFullKeyEvents(final String locator, final String string)
743 {
744 }
745
746 public void simulateKeyPressForCharacter(final String locator, final Character character, final Collection<KeyEventType> eventsToFire)
747 {
748 }
749
750 public void simulateKeyPressForCharacter(String s, Character character)
751 {
752 }
753
754 public void simulateKeyPressForSpecialKey(final String locator, final int keyCode, final Collection<KeyEventType> eventsToFire)
755 {
756 }
757
758 public void generateKeyEvent(String locator, KeyEventType eventType, int keyCode, int characterCode, boolean shiftKey, boolean altKey, boolean controlKey, boolean metaKey) {
759 }
760
761 public void simulateKeyPressForSpecialKey(String s, int i)
762 {
763 }
764
765 public void toggleToKeyCode(boolean b)
766 {
767 }
768
769 public void toggleToCharacterCode(boolean b)
770 {
771 }
772
773 public void selectOption(final String selectName, final String label)
774 {
775 }
776
777 public void selectOptionAndWaitForAjaxWithJquery(final String selectName, final String label)
778 {
779 }
780
781 public void check(final String name, final String value)
782 {
783 }
784
785 public void clickLinkWithText(final String text, final boolean waitForPageToLoad)
786 {
787 }
788
789 public void clickButton(final String buttonText, final boolean waitForPageToLoad)
790 {
791 }
792
793 public void clickButtonAndWaitForAjaxWithJquery(final String buttonText)
794 {
795 }
796
797 public void clickButtonWithName(final String buttonName, final boolean waitForPageToLoad)
798 {
799 }
800
801 public void clickButtonWithNameAndWaitForAjaxWithJquery(final String buttonName)
802 {
803 }
804
805 public void clickElementWithTitle(final String title)
806 {
807 }
808
809 public void clickElementWithTitleAndWaitForAjaxWithJquery(final String title)
810 {
811 }
812
813 public void clickElementWithClass(final String className)
814 {
815 }
816
817 public void clickElementWithClassAndWaitForAjaxWithJquery(final String className)
818 {
819 }
820
821 public void clickElementWithCss(final String cssSelector)
822 {
823 }
824
825 public void clickElementWithCssAndWaitForAjaxWithJquery(final String cssSelector)
826 {
827 }
828
829 public void clickElementWithXpath(final String xpath)
830 {
831 }
832
833 public void clickElementWithXpathAndWaitForAjaxWithJquery(final String xpath)
834 {
835 }
836
837 public void typeInElementWithName(final String elementName, final String text)
838 {
839 }
840
841 public void typeInElementWithCss(final String cssSelector, final String text)
842 {
843 }
844
845 public boolean hasJquery()
846 {
847 return false;
848 }
849
850 public void setExtensionJs(final String s)
851 {
852 }
853
854 public void start()
855 {
856 }
857
858 public void start(final String s)
859 {
860 }
861
862 public void start(final Object o)
863 {
864 }
865
866 public void stop()
867 {
868 }
869
870 public void showContextualBanner()
871 {
872 }
873
874 public void showContextualBanner(final String s, final String s1)
875 {
876 }
877
878 public void click(final String s)
879 {
880 }
881
882 public void doubleClick(final String s)
883 {
884 }
885
886 public void contextMenu(final String s)
887 {
888 }
889
890 public void clickAt(final String s, final String s1)
891 {
892 }
893
894 public void doubleClickAt(final String s, final String s1)
895 {
896 }
897
898 public void contextMenuAt(final String s, final String s1)
899 {
900 }
901
902 public void fireEvent(final String s, final String s1)
903 {
904 }
905
906 public void focus(final String s)
907 {
908 }
909
910 public Browser getBrowser()
911 {
912 return null;
913 }
914
915 public void seleniumKeyPress(final String locator, final String key)
916 {
917 }
918
919 public void evaluate (String command)
920 {
921 }
922
923 public Object execute (String command, Object... arguments)
924 {
925 return null;
926 }
927
928 public void captureEntirePageScreenshot (String filePath)
929 {
930 }
931
932 public boolean resizeScreen(ScreenResolution resolution, boolean refreshAfterResize)
933 {
934 return false;
935 }
936
937 public void refreshAndWait ()
938 {
939 }
940
941 public boolean waitForJQuery (long waitTimeMillis)
942 {
943 return false;
944 }
945
946 @Override
947 public ScreenElement getElementAtPoint(int x, int y)
948 {
949 throw new UnsupportedOperationException("Not implemented");
950 }
951 }