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*/ 21 22package org.apache.harmony.security.tests.java.security.cert.serialization; 23 24import java.io.Serializable; 25import java.security.cert.CertPath; 26import java.security.cert.CertPathValidatorException; 27 28import org.apache.harmony.testframework.serialization.SerializationTest; 29 30 31/** 32 * Test for CertPathValidatorException serialization 33 * 34 */ 35 36public class CertPathValidatorExceptionTest extends SerializationTest implements 37 SerializationTest.SerializableAssert { 38 39 public static String[] msgs = { 40 "New message", 41 "Long message for Exception. Long message for Exception. Long message for Exception." }; 42 43 protected Object[] getData() { 44 Exception cause = new Exception(msgs[1]); 45 CertPathValidatorException dExc = new CertPathValidatorException( 46 msgs[0], cause); 47 String msg = null; 48 Throwable th = null; 49 return new Object[] { new CertPathValidatorException(), 50 new CertPathValidatorException(msg), 51 new CertPathValidatorException(msgs[1]), 52 new CertPathValidatorException(new Throwable()), 53 new CertPathValidatorException(th), 54 new CertPathValidatorException(msgs[1], dExc), 55 new CertPathValidatorException(msgs[1], dExc, null, -1) }; 56 } 57 58 public void assertDeserialized(Serializable oref, Serializable otest) { 59 60 // common checks 61 THROWABLE_COMPARATOR.assertDeserialized(oref, otest); 62 63 // class specific checks 64 CertPathValidatorException ref = (CertPathValidatorException) oref; 65 CertPathValidatorException test = (CertPathValidatorException) otest; 66 CertPath cp = ref.getCertPath(); 67 int ind = ref.getIndex(); 68 assertEquals("Incorrect index", test.getIndex(), ind); 69 if (cp == null) { 70 assertNull("getCertPath() must return null", test.getCertPath()); 71 } else { 72 CertPath res = test.getCertPath(); 73 assertEquals("Incorrect CertPath", res.getClass(), cp.getClass()); 74 } 75 } 76 77} 78