1
2
3
4
5
6
7
8
9
10
11 package org.mule.extras.pgp;
12
13 import org.mule.tck.AbstractMuleTestCase;
14 import org.mule.umo.security.UMOAuthentication;
15
16 import java.io.FileInputStream;
17 import java.net.URL;
18
19 import cryptix.message.Message;
20 import cryptix.message.MessageFactory;
21
22 public class PGPSecurityProviderTestCase extends AbstractMuleTestCase
23 {
24 private PGPSecurityProvider securityProvider;
25
26 private Message message;
27
28 protected void doSetUp() throws Exception
29 {
30 PGPKeyRingImpl keyM = new PGPKeyRingImpl();
31 URL url;
32
33 url = Thread.currentThread().getContextClassLoader().getResource("./serverPublic.gpg");
34 keyM.setPublicKeyRingFileName(url.getFile());
35
36 url = Thread.currentThread().getContextClassLoader().getResource("./serverPrivate.gpg");
37 keyM.setSecretKeyRingFileName(url.getFile());
38
39 keyM.setSecretAliasId("0x6168F39C");
40 keyM.setSecretPassphrase("TestingPassphrase");
41 keyM.initialise();
42
43 securityProvider = new PGPSecurityProvider();
44 securityProvider.setKeyManager(keyM);
45
46 securityProvider.initialise();
47
48 MessageFactory mf = MessageFactory.getInstance("OpenPGP");
49
50 url = Thread.currentThread().getContextClassLoader().getResource("./signed.asc");
51
52 FileInputStream in = new FileInputStream(url.getFile());
53
54 message = (Message)mf.generateMessages(in).iterator().next();
55 }
56
57
58
59
60
61
62 protected void doTearDown() throws Exception
63 {
64 securityProvider = null;
65 message = null;
66 }
67
68 public void testAuthenticate()
69 {
70 try
71 {
72 UMOAuthentication auth = new PGPAuthentication("Mule client <mule_client@mule.com>", message);
73
74 auth = securityProvider.authenticate(auth);
75
76 assertTrue(auth.isAuthenticated());
77 }
78 catch (Exception e)
79 {
80 e.printStackTrace();
81 assertTrue(false);
82 }
83 }
84 }