package eu.europa.esig.dss.validation.process.bbb.vci; import static org.junit.Assert.assertEquals; import java.util.List; import org.junit.Test; import eu.europa.esig.dss.jaxb.detailedreport.XmlConstraint; import eu.europa.esig.dss.jaxb.detailedreport.XmlStatus; import eu.europa.esig.dss.jaxb.detailedreport.XmlVCI; import eu.europa.esig.dss.jaxb.diagnostic.XmlPolicy; import eu.europa.esig.dss.jaxb.diagnostic.XmlSignature; import eu.europa.esig.dss.validation.process.bbb.vci.checks.SignaturePolicyHashValidCheck; import eu.europa.esig.dss.validation.reports.wrapper.SignatureWrapper; import eu.europa.esig.jaxb.policy.Level; import eu.europa.esig.jaxb.policy.LevelConstraint; public class SignaturePolicyHashValidCheckTest { @Test public void signaturePolicyHashValidCheck() throws Exception { XmlPolicy xmlPolicy = new XmlPolicy(); xmlPolicy.setStatus(true); XmlSignature sig = new XmlSignature(); sig.setPolicy(xmlPolicy); LevelConstraint constraint = new LevelConstraint(); constraint.setLevel(Level.FAIL); XmlVCI result = new XmlVCI(); SignaturePolicyHashValidCheck sphvc = new SignaturePolicyHashValidCheck(result, new SignatureWrapper(sig), constraint); sphvc.execute(); List<XmlConstraint> constraints = result.getConstraint(); assertEquals(1, constraints.size()); assertEquals(XmlStatus.OK, constraints.get(0).getStatus()); } @Test public void invalidHashCheck() throws Exception { XmlPolicy xmlPolicy = new XmlPolicy(); xmlPolicy.setStatus(false); XmlSignature sig = new XmlSignature(); sig.setPolicy(xmlPolicy); LevelConstraint constraint = new LevelConstraint(); constraint.setLevel(Level.FAIL); XmlVCI result = new XmlVCI(); SignaturePolicyHashValidCheck sphvc = new SignaturePolicyHashValidCheck(result, new SignatureWrapper(sig), constraint); sphvc.execute(); List<XmlConstraint> constraints = result.getConstraint(); assertEquals(1, constraints.size()); assertEquals(XmlStatus.NOT_OK, constraints.get(0).getStatus()); } }