]> WPIA git - gigi.git/blob - tests/org/cacert/gigi/pages/wot/TestTTPAdmin.java
31b0e51bd9d5bb3d77483fee2586cecc110a4ff7
[gigi.git] / tests / org / cacert / gigi / pages / wot / TestTTPAdmin.java
1 package org.cacert.gigi.pages.wot;
2
3 import static org.junit.Assert.*;
4
5 import java.io.IOException;
6 import java.net.MalformedURLException;
7
8 import org.cacert.gigi.dbObjects.Group;
9 import org.cacert.gigi.dbObjects.User;
10 import org.cacert.gigi.pages.admin.TTPAdminPage;
11 import org.cacert.gigi.testUtils.ClientTest;
12 import org.junit.Test;
13
14 public class TestTTPAdmin extends ClientTest {
15
16     User us2;
17
18     public TestTTPAdmin() throws IOException {
19         us2 = User.getById(createVerifiedUser("fn", "ln", createUniqueName() + "@example.com", TEST_PASSWORD));
20     }
21
22     @Test
23     public void testHasRight() throws IOException {
24         testTTPAdmin(true);
25     }
26
27     @Test
28     public void testHasNoRight() throws IOException {
29         testTTPAdmin(false);
30     }
31
32     public void testTTPAdmin(boolean hasRight) throws IOException {
33         if (hasRight) {
34             grant(email, Group.getByString("ttp-assurer"));
35         }
36         grant(u.getEmail(), TTPAdminPage.TTP_APPLICANT);
37         cookie = login(u.getEmail(), TEST_PASSWORD);
38
39         assertEquals( !hasRight ? 403 : 200, fetchStatusCode(TTPAdminPage.PATH));
40         assertEquals( !hasRight ? 403 : 200, fetchStatusCode(TTPAdminPage.PATH + "/"));
41         assertEquals( !hasRight ? 403 : 200, fetchStatusCode(TTPAdminPage.PATH + "/" + u.getId()));
42         assertEquals( !hasRight ? 403 : 404, fetchStatusCode(TTPAdminPage.PATH + "/" + us2.getId()));
43         assertEquals( !hasRight ? 403 : 404, fetchStatusCode(TTPAdminPage.PATH + "/" + 100));
44     }
45
46     private int fetchStatusCode(String path) throws MalformedURLException, IOException {
47         return get(path).getResponseCode();
48     }
49 }