]> WPIA git - gigi.git/blob - tests/org/cacert/gigi/email/TestEmailProviderClass.java
upd: rename sendmail to sendMail
[gigi.git] / tests / org / cacert / gigi / email / TestEmailProviderClass.java
1 package org.cacert.gigi.email;
2
3 import static org.junit.Assert.*;
4 import static org.junit.Assume.*;
5
6 import java.io.IOException;
7 import java.security.KeyManagementException;
8 import java.security.NoSuchAlgorithmException;
9 import java.security.cert.CertificateException;
10 import java.security.cert.X509Certificate;
11 import java.util.Properties;
12
13 import javax.net.ssl.SSLContext;
14 import javax.net.ssl.TrustManager;
15 import javax.net.ssl.X509TrustManager;
16
17 import org.cacert.gigi.testUtils.ConfiguredTest;
18 import org.junit.BeforeClass;
19 import org.junit.Test;
20
21 public class TestEmailProviderClass extends ConfiguredTest {
22
23     @Test
24     public void testNonmail() throws IOException {
25         String result = EmailProvider.getInstance().checkEmailServer(0, "nomail");
26         assertNotEquals(EmailProvider.OK, result);
27     }
28
29     @Test
30     public void testFastcheckSucceed() throws IOException {
31         String succmail = getTestProps().getProperty("email.address");
32         assumeNotNull(succmail);
33
34         String result = EmailProvider.getInstance().checkEmailServer(0, succmail);
35         assertEquals(EmailProvider.OK, result);
36     }
37
38     @Test
39     public void testFastcheckFail() throws IOException {
40         String failmail = getTestProps().getProperty("email.non-address");
41         assumeNotNull(failmail);
42
43         String result = EmailProvider.getInstance().checkEmailServer(0, failmail);
44         assertNotEquals(EmailProvider.OK, result);
45     }
46
47     @BeforeClass
48     public static void initMailsystem() throws NoSuchAlgorithmException, KeyManagementException {
49         Properties prop = new Properties();
50         prop.setProperty("emailProvider", "org.cacert.gigi.email.SendMail");
51         EmailProvider.initSystem(prop, null, null);
52         SSLContext c = SSLContext.getInstance("TLS");
53         c.init(null, new TrustManager[] {
54                 new X509TrustManager() {
55
56                     @Override
57                     public X509Certificate[] getAcceptedIssuers() {
58                         return null;
59                     }
60
61                     @Override
62                     public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {
63
64                 }
65
66                     @Override
67                     public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {
68
69                 }
70                 }
71         }, null);
72         SSLContext.setDefault(c);
73     }
74 }