1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package net.sf.webphotos.gui.util;
17
18 import java.awt.Component;
19 import java.awt.Rectangle;
20 import net.sf.webphotos.util.Util;
21 import org.junit.*;
22 import static org.junit.Assert.assertEquals;
23 import static org.junit.Assert.assertNull;
24 import org.uispec4j.Trigger;
25 import org.uispec4j.UISpec4J;
26 import org.uispec4j.Window;
27 import org.uispec4j.finder.ComponentMatcher;
28 import org.uispec4j.interception.WindowHandler;
29 import org.uispec4j.interception.WindowInterceptor;
30
31
32
33
34
35
36 public class LoginTest {
37
38 static {
39 UISpec4J.init();
40 }
41
42
43
44
45 public LoginTest() {
46 }
47
48
49
50
51
52 @BeforeClass
53 public static void setUpClass() throws Exception {
54 }
55
56
57
58
59
60 @AfterClass
61 public static void tearDownClass() throws Exception {
62 }
63
64
65
66
67 @Before
68 public void setUp() {
69 }
70
71
72
73
74 @After
75 public void tearDown() {
76 }
77
78
79
80
81 @Test
82 public void testLogin_Basic() {
83 System.out.println("Basic Login");
84
85 final Login login = new Login();
86 final WindowHandler windowHandler = new WindowHandler() {
87
88 @Override
89 public Trigger process(Window window) {
90
91 return window.getButton("OK").triggerClick();
92 }
93 };
94 interceptDialog(login, windowHandler);
95
96 assertEquals(Util.getConfig().getString("autoPreencher.Login"), login.getUser());
97 assertEquals(Util.getConfig().getString("autoPreencher.Pass"), new String(login.getPassword()));
98 }
99
100
101
102
103 @Test
104 public void testLogin_WritingInfo() {
105 System.out.println("Writing info Login");
106
107 final String testeLogin = "TesteLogin";
108 final String testePass = "TestePass";
109
110 final Login login = new Login();
111 final WindowHandler windowHandler = new WindowHandler() {
112
113 @Override
114 public Trigger process(Window window) {
115 window.getTextBox(new ComponentMatcher() {
116
117 @Override
118 public boolean matches(Component cmpnt) {
119 return cmpnt.getBounds().equals(new Rectangle(55,8,129,20));
120 }
121 }).setText(testeLogin);
122 window.getPasswordField(new ComponentMatcher() {
123
124 @Override
125 public boolean matches(Component cmpnt) {
126 return cmpnt.getBounds().equals(new Rectangle(55,34,129,20));
127 }
128 }).setPassword(testePass);
129
130
131 return window.getButton("OK").triggerClick();
132 }
133 };
134 interceptDialog(login, windowHandler);
135
136 assertEquals(testeLogin, login.getUser());
137 assertEquals(testePass, new String(login.getPassword()));
138 }
139
140
141
142
143 @Test
144 public void testLogin_Cancel() {
145 System.out.println("Cancel Login");
146
147 final Login login = new Login();
148 final WindowHandler windowHandler = new WindowHandler() {
149
150 @Override
151 public Trigger process(Window window) {
152
153 return window.getButton("Cancel").triggerClick();
154 }
155 };
156 interceptDialog(login, windowHandler);
157
158 assertNull(login.getUser());
159 assertNull(login.getPassword());
160 }
161
162 private void interceptDialog(final Login login, final WindowHandler windowHandler) {
163 WindowInterceptor.init(new Trigger() {
164
165 @Override
166 public void run() throws Exception {
167 login.show();
168 }
169 }).process(windowHandler).run();
170 }
171 }