package org.bouncycastle.asn1.test;
import org.bouncycastle.asn1.DERSequence;
import org.bouncycastle.asn1.DERUTF8String;
import org.bouncycastle.asn1.cmc.BodyPartID;
import org.bouncycastle.asn1.cmc.OtherMsg;
import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers;
import org.bouncycastle.util.test.SimpleTest;
public class OtherMsgTest
extends SimpleTest
{
public static void main(String[] args)
{
runTest(new OtherMsgTest());
}
public String getName()
{
return "OtherMsgTest";
}
public void performTest()
throws Exception
{
OtherMsg otherMsg = new OtherMsg(new BodyPartID(10L), PKCSObjectIdentifiers.id_aa, new DERUTF8String("Cats"));
byte[] b = otherMsg.getEncoded();
OtherMsg otherMsgResult = OtherMsg.getInstance(b);
isEquals("bodyPartID", otherMsg.getBodyPartID(), otherMsgResult.getBodyPartID());
isEquals("otherMsgType", otherMsg.getOtherMsgType(), otherMsgResult.getOtherMsgType());
isEquals("otherMsgValue", otherMsg.getOtherMsgValue(), otherMsgResult.getOtherMsgValue());
try {
OtherMsg.getInstance(new DERSequence());
fail("Sequence should be 3 elements long.");
} catch (Throwable t) {
isEquals("Sequence size",t.getClass(), IllegalArgumentException.class);
}
}
}