1 package club.wpia.gigi.pages.account;
3 import static org.junit.Assert.*;
5 import java.io.IOException;
6 import java.net.URLEncoder;
10 import club.wpia.gigi.GigiApiException;
11 import club.wpia.gigi.pages.account.ChangePasswordPage;
12 import club.wpia.gigi.testUtils.ClientTest;
14 public class TestChangePassword extends ClientTest {
16 String path = ChangePasswordPage.PATH;
18 public TestChangePassword() throws IOException {
19 cookie = login(u.getEmail(), TEST_PASSWORD);
20 assertTrue(isLoggedin(cookie));
24 public void testChangePasswordInternal() throws IOException, GigiApiException {
26 u.changePassword(TEST_PASSWORD + "wrong", TEST_PASSWORD + "v2");
27 fail("Password change must not succeed if old password is wrong.");
28 } catch (GigiApiException e) {
32 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD)));
33 u.changePassword(TEST_PASSWORD, TEST_PASSWORD + "v2");
34 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD + "v2")));
38 public void testChangePasswordWeb() throws IOException {
39 String error = executeBasicWebInteraction(cookie, path,
40 "oldpassword=" + URLEncoder.encode(TEST_PASSWORD, "UTF-8") //
41 + "&pword1=" + URLEncoder.encode(TEST_PASSWORD + "v2", "UTF-8")//
42 + "&pword2=" + URLEncoder.encode(TEST_PASSWORD + "v2", "UTF-8"));
44 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD + "v2")));
45 assertFalse(isLoggedin(login(u.getEmail(), TEST_PASSWORD)));
50 public void testChangePasswordWebOldWrong() throws IOException {
51 String error = executeBasicWebInteraction(cookie, path,
52 "oldpassword=a" + URLEncoder.encode(TEST_PASSWORD, "UTF-8") //
53 + "&pword1=" + URLEncoder.encode(TEST_PASSWORD + "v2", "UTF-8")//
54 + "&pword2=" + URLEncoder.encode(TEST_PASSWORD + "v2", "UTF-8"));
56 assertFalse(isLoggedin(login(u.getEmail(), TEST_PASSWORD + "v2")));
57 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD)));
62 public void testChangePasswordWebNewWrong() throws IOException {
63 String error = executeBasicWebInteraction(cookie, path,
64 "oldpassword=" + URLEncoder.encode(TEST_PASSWORD, "UTF-8") //
65 + "&pword1=" + URLEncoder.encode(TEST_PASSWORD + "v2", "UTF-8")//
66 + "&pword2=a" + URLEncoder.encode(TEST_PASSWORD + "v2", "UTF-8"));
68 assertFalse(isLoggedin(login(u.getEmail(), TEST_PASSWORD + "v2")));
69 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD)));
74 public void testChangePasswordWebNewEasy() throws IOException {
75 String error = executeBasicWebInteraction(cookie, path, "oldpassword=" + URLEncoder.encode(TEST_PASSWORD, "UTF-8") //
76 + "&pword1=a&pword2=a");
78 assertFalse(isLoggedin(login(u.getEmail(), TEST_PASSWORD + "v2")));
79 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD)));
84 public void testChangePasswordWebMissingFields() throws IOException {
85 String np = URLEncoder.encode(TEST_PASSWORD + "v2", "UTF-8");
86 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD)));
87 String error = executeBasicWebInteraction(cookie, path, "oldpassword=" + URLEncoder.encode(TEST_PASSWORD, "UTF-8") //
90 assertFalse(isLoggedin(login(u.getEmail(), TEST_PASSWORD + "v2")));
91 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD)));
93 error = executeBasicWebInteraction(cookie, path, "oldpassword=" + URLEncoder.encode(TEST_PASSWORD, "UTF-8") //
96 assertFalse(isLoggedin(login(u.getEmail(), TEST_PASSWORD + "v2")));
97 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD)));
99 error = executeBasicWebInteraction(cookie, path, "pword1=" + np + "&pword2=" + np);
100 assertNotNull(error);
101 assertFalse(isLoggedin(login(u.getEmail(), TEST_PASSWORD + "v2")));
102 assertTrue(isLoggedin(login(u.getEmail(), TEST_PASSWORD)));