All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
org.bouncycastle.asn1.test.CMCStatusInfoTest Maven / Gradle / Ivy
package org.bouncycastle.asn1.test;
import java.util.Date;
import org.bouncycastle.asn1.DERGeneralizedTime;
import org.bouncycastle.asn1.cmc.BodyPartID;
import org.bouncycastle.asn1.cmc.CMCFailInfo;
import org.bouncycastle.asn1.cmc.CMCStatus;
import org.bouncycastle.asn1.cmc.CMCStatusInfo;
import org.bouncycastle.asn1.cmc.CMCStatusInfoBuilder;
import org.bouncycastle.asn1.cmc.PendInfo;
import org.bouncycastle.util.Strings;
import org.bouncycastle.util.test.SimpleTest;
public class CMCStatusInfoTest
extends SimpleTest
{
public static void main(String[] args)
{
runTest(new CMCStatusInfoTest());
}
public String getName()
{
return "CMCStatusInfoTest";
}
public void performTest()
throws Exception
{
{ // Without optional status String
CMCStatusInfoBuilder bldr =
new CMCStatusInfoBuilder(CMCStatus.confirmRequired, new BodyPartID(10));
CMCStatusInfo cmsInfo = bldr.build();
isTrue("Has statusString", null == cmsInfo.getStatusString());
isEquals("Has other info", false, cmsInfo.hasOtherInfo());
byte[] b = cmsInfo.getEncoded();
CMCStatusInfo res = CMCStatusInfo.getInstance(b);
// Same
isEquals("CMCStatus with no optional part",cmsInfo, res);
isEquals("Has other info", false, res.hasOtherInfo());
}
{ // Without optional other info.
CMCStatusInfoBuilder bldr =
new CMCStatusInfoBuilder(CMCStatus.confirmRequired, new BodyPartID(10)).setStatusString("Cats");
CMCStatusInfo cmsInfo = bldr.build();
isEquals("Has other info", false, cmsInfo.hasOtherInfo());
byte[] b = cmsInfo.getEncoded();
CMCStatusInfo res = CMCStatusInfo.getInstance(b);
// Same
isEquals("CMCStatus with no optional part",cmsInfo, res);
isEquals("Has other info", false, res.hasOtherInfo());
}
{ // With optional info: PendInfo
CMCStatusInfoBuilder bldr =
new CMCStatusInfoBuilder(CMCStatus.confirmRequired, new BodyPartID(10))
.setStatusString("Cats")
.setOtherInfo(new PendInfo(Strings.toByteArray("fish"), new DERGeneralizedTime(new Date())));
CMCStatusInfo cmsInfo = bldr.build();
isEquals("Must have other info", true, cmsInfo.hasOtherInfo());
isEquals("Other is NOT fail info", false, cmsInfo.getOtherInfo().isFailInfo());
byte[] b = cmsInfo.getEncoded();
CMCStatusInfo res = CMCStatusInfo.getInstance(b);
isEquals("With optional info: PendInfo",cmsInfo, res);
isEquals("Must have other info", true, res.hasOtherInfo());
isEquals("Other is NOT fail info", false, res.getOtherInfo().isFailInfo());
}
{ // With optional info: CMCFailInfo
CMCStatusInfoBuilder bldr =
new CMCStatusInfoBuilder(CMCStatus.confirmRequired, new BodyPartID(10))
.setStatusString("Cats")
.setOtherInfo(CMCFailInfo.authDataFail);
CMCStatusInfo cmsInfo = bldr.build();
isEquals("Must have other info", true, cmsInfo.hasOtherInfo());
isEquals("Other is fail info", true, cmsInfo.getOtherInfo().isFailInfo());
byte[] b = cmsInfo.getEncoded();
CMCStatusInfo res = CMCStatusInfo.getInstance(b);
isEquals("With optional info: CMCFailInfo",cmsInfo, res);
isEquals("Must have other info", true, res.hasOtherInfo());
isEquals("Other is fail info", true, res.getOtherInfo().isFailInfo());
}
}
}