1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.net.pop3;
18
19 import junit.framework.TestCase;
20
21 import java.net.InetAddress;
22 import java.io.IOException;
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 public class POP3ClientTest extends TestCase
44 {
45 POP3Client p = null;
46
47 String user = TestSetupParameters.user;
48 String emptyUser = TestSetupParameters.emptyuser;
49 String password = TestSetupParameters.password;
50 String mailhost = TestSetupParameters.mailhost;
51
52
53
54
55 public POP3ClientTest(String name)
56 {
57 super(name);
58 }
59
60 private void reset() throws IOException
61 {
62
63 if (p == null)
64 {
65
66 }
67 else if (p.isConnected())
68 {
69 p.disconnect();
70 }
71 p = null;
72 p = new POP3Client();
73 }
74
75 private void connect() throws Exception
76 {
77 p.connect(InetAddress.getByName(mailhost));
78 assertTrue(p.isConnected());
79 assertEquals(POP3.AUTHORIZATION_STATE, p.getState());
80 }
81
82 private void login() throws Exception
83 {
84 assertTrue(p.login(user, password));
85 assertEquals(POP3.TRANSACTION_STATE, p.getState());
86 }
87
88
89
90
91
92 public void testValidLoginWithNameAndPassword() throws Exception
93 {
94 reset();
95 connect();
96
97
98 login();
99 }
100
101
102
103
104 public void testInvalidLoginWithBadName() throws Exception
105 {
106 reset();
107 connect();
108
109
110 assertFalse(p.login("badusername", password));
111 }
112
113
114
115
116 public void testInvalidLoginWithBadPassword() throws Exception
117 {
118 reset();
119 connect();
120
121
122 assertFalse(p.login(user, "badpassword"));
123 }
124
125
126
127
128
129 public void testLoginFromWrongState() throws Exception
130 {
131 reset();
132
133
134
135 assertFalse(p.login(user, password));
136
137
138 connect();
139 p.setState(POP3.TRANSACTION_STATE);
140 assertFalse(p.login(user, password));
141 p.disconnect();
142
143
144 connect();
145 p.setState(POP3.UPDATE_STATE);
146 assertFalse(p.login(user, password));
147 p.disconnect();
148 }
149
150
151
152
153
154 public void testLogoutFromAllStates() throws Exception
155 {
156
157 reset();
158 connect();
159 login();
160 assertTrue(p.logout());
161 assertEquals(POP3.UPDATE_STATE, p.getState());
162
163
164 reset();
165 connect();
166 login();
167 p.setState(POP3.UPDATE_STATE);
168 assertTrue(p.logout());
169 }
170 }