package org.bouncycastle.asn1.test;
import org.bouncycastle.asn1.ASN1Integer;
import org.bouncycastle.asn1.ASN1ObjectIdentifier;
import org.bouncycastle.asn1.DERSequence;
import org.bouncycastle.asn1.cmc.ExtendedFailInfo;
import org.bouncycastle.util.test.SimpleTest;
public class ExtendedFailInfoTest
extends SimpleTest
{
public static void main(String[] args)
{
runTest(new ExtendedFailInfoTest());
}
public String getName()
{
return "ExtendedFailInfo";
}
public void performTest()
throws Exception
{
ExtendedFailInfo extendedFailInfo = new ExtendedFailInfo(
new ASN1ObjectIdentifier("1.2.3.2"),
new ASN1Integer(10L));
byte[] b = extendedFailInfo.getEncoded();
ExtendedFailInfo extendedFailInfoResult = ExtendedFailInfo.getInstance(b);
isEquals("failInfoOID", extendedFailInfo.getFailInfoOID(), extendedFailInfoResult.getFailInfoOID());
isEquals("failInfoValue", extendedFailInfo.getFailInfoValue(), extendedFailInfoResult.getFailInfoValue());
try
{
ExtendedFailInfo.getInstance(new DERSequence(new ASN1Integer(10L)));
fail("Sequence must be 2 elements.");
}
catch (Throwable t)
{
isEquals("Wrong exception type",t.getClass(), IllegalArgumentException.class);
}
}
}