1   package net.sourceforge.heracles.acegi;
2   
3   import junit.framework.TestCase;
4   import net.sourceforge.heracles.testUtilities.CreateTestData;
5   
6   import org.acegisecurity.AuthenticationServiceException;
7   import org.acegisecurity.providers.UsernamePasswordAuthenticationToken;
8   import org.acegisecurity.userdetails.UserDetails;
9   
10  /**
11   * Title:            HeraclesAuthenticationProviderTest.java<br>
12   * Description:      AuthenticationProvider for heracles<br>
13   * Java Version:     JDK 1.5<br>
14   *
15   * @author Philipp Gantert
16   * @version 1.0
17   */
18  public class HeraclesAuthenticationProviderTest extends TestCase {
19  
20  	private static CreateTestData testData;
21  
22  	@Override
23  	protected void setUp() throws Exception {
24  		testData = new CreateTestData(1, 0, 0, 0);
25  	}
26  
27  	@Override
28  	protected void tearDown() throws Exception {
29  		testData.deleteTestData(testData.getTestData());
30  	}
31  
32  	/**
33  	 * Testing of the method retrieveUser
34  	 *
35  	 */
36  	public void testRetrieveUser() {
37  		HeraclesAuthenticationProvider acegi = new HeraclesAuthenticationProvider();
38  		String username = CreateTestData.GIVENNAME + "0." + CreateTestData.SURNAME + "0" + CreateTestData.REALM;
39  		UsernamePasswordAuthenticationToken userNamePasswdAuthToken = new UsernamePasswordAuthenticationToken(username, CreateTestData.PASSWORD);
40  		UserDetails user = acegi.retrieveUser(username, userNamePasswdAuthToken);
41  		assertEquals(username, user.getUsername());
42  	}
43  
44  	/**
45  	 * Testing of the Exception
46  	 * 
47  	 */
48  	public void testFailedRetrieveUser() {
49  		HeraclesAuthenticationProvider acegi = new HeraclesAuthenticationProvider();
50  		try {
51  			UsernamePasswordAuthenticationToken userNamePasswdAuthToken = new UsernamePasswordAuthenticationToken("heracles", "");
52  			UserDetails user = acegi.retrieveUser("heracles", userNamePasswdAuthToken);
53  			fail("Here should be thrown a AuthenticationServiceException");
54  		} catch (AuthenticationServiceException ex) {
55  
56  		}		
57  	}
58  
59  }