1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache License, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 /** 19 * @author Vera Y. Petrashkova 20 * @version $Revision$ 21 */ 22 23 package org.apache.harmony.security.tests.java.security; 24 25 import java.io.IOException; 26 import java.security.KeyStore; 27 28 import javax.security.auth.callback.Callback; 29 import javax.security.auth.callback.CallbackHandler; 30 import javax.security.auth.callback.UnsupportedCallbackException; 31 32 import org.apache.harmony.security.tests.support.tmpCallbackHandler; 33 34 import junit.framework.TestCase; 35 36 /** 37 * Tests for <code>KeyStore.CallbackHandlerProtection> class constructor and methods 38 * 39 */ 40 public class KSCallbackHandlerProtectionTest extends TestCase { 41 42 /** 43 * Test for <code>KeyStore.CallbackHandlerProtection(CallbackHandler handler)</code> 44 * constructor 45 * Assertion: throws NullPointerException when handler is null 46 */ 47 public void testCallbackHandlerProtection() { 48 try { 49 new KeyStore.CallbackHandlerProtection(null); 50 fail("NullPointerException must be thrown when handler is null"); 51 } catch (NullPointerException e) { 52 } 53 54 class TestCallbackHandler implements CallbackHandler { 55 56 public void handle(Callback[] callbacks) throws IOException, 57 UnsupportedCallbackException { 58 // does nothing 59 } 60 61 } 62 63 try { 64 new KeyStore.CallbackHandlerProtection(new TestCallbackHandler()); 65 } catch (Exception e) { 66 fail("unexpected exception: " + e); 67 } 68 69 } 70 71 /** 72 * Test for <code>getCallbackHandler()</code> method 73 * Assertion: returns CallbackHandler 74 */ 75 public void testGetCallBackHandler() { 76 CallbackHandler cbh = new tmpCallbackHandler(); 77 KeyStore.CallbackHandlerProtection ksCBH = new KeyStore.CallbackHandlerProtection(cbh); 78 assertEquals("Incorrect CallbackHandler", cbh, 79 ksCBH.getCallbackHandler()); 80 } 81 } 82 83