Index: modules/security/src/test/impl/java.injected/java/security/KeyStoreSpiTest.java =================================================================== --- modules/security/src/test/impl/java.injected/java/security/KeyStoreSpiTest.java (revision 0) +++ modules/security/src/test/impl/java.injected/java/security/KeyStoreSpiTest.java (revision 0) @@ -0,0 +1,50 @@ +package java.security; + +import java.io.IOException; +import java.security.KeyStore; +import java.security.KeyStoreException; +import java.security.NoSuchAlgorithmException; +import java.security.NoSuchProviderException; +import java.security.cert.CertificateException; + +import javax.crypto.KeyGenerator; +import javax.crypto.NoSuchPaddingException; +import javax.crypto.SecretKey; + +import junit.framework.TestCase; + +public class KeyStoreSpiTest extends TestCase { + + public static void main(String[] args) { + junit.textui.TestRunner.run(KeyStoreSpiTest.class); + } + + /* + * Test method for 'java.security.KeyStoreSpi.engineEntryInstanceOf(String, + * Class)' + */ + public void testEngineEntryInstanceOf() throws KeyStoreException, + NoSuchAlgorithmException, CertificateException, IOException, NoSuchProviderException, NoSuchPaddingException { + + // create a KeyStore + KeyStore keyStore = KeyStore.getInstance("BKS"); + keyStore.load(null, "pwd".toCharArray()); + + // genarate a key + KeyGenerator keyGen = KeyGenerator.getInstance("DES", "BC"); + keyGen.init(56); + SecretKey secretKey = keyGen.generateKey(); + + // put the key into keystore + String alias = "alias"; + keyStore.setKeyEntry(alias, secretKey, "pwd".toCharArray(), null); + + // check if it is a secret key + assertTrue(keyStore.entryInstanceOf(alias, + KeyStore.SecretKeyEntry.class)); + + // check if it is NOT a private key + assertFalse(keyStore.entryInstanceOf(alias, + KeyStore.PrivateKeyEntry.class)); + } +}