public void InternalVerificationPolicyInvalidRfc3161RecordAggregationTimeTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.KsiSignature_Invalid_Rfc3161_Aggregation_Time_Mismatch),
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int02);
        }
        public void InternalVerificationPolicyInvalidSignaturePublicationRecordPublicationTimeTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.KsiSignature_Invalid_With_Invalid_Publication_Record_Time)
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int07);
        }
        public void InternalVerificationPolicyInvalidAggregationChainInputHashTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.KsiSignature_Legacy_Invalid_Input),
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int01);
        }
        public void InternalVerificationPolicyInvalidCalendarHashChainRegistrationTimeTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.KsiSignature_Invalid_Calendar_Chain_Registration_Time)
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int05);
        }
        public void InternalVerificationPolicyInvalidCalendarAuthenticationRecordAggregationTimeTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.KsiSignature_Invalid_Calendar_Authentication_Record_Invalid_Publication_Time)
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int06);
        }
        public void InternalVerificationPolicyInvalidCalendarHashChainInputHashVerificationTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.KsiSignature_Invalid_Calendar_Chain_Input_Hash)
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int03);
        }
        public void InternalVerificationPolicyInvalidAggregationHashChainIndexTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.KsiSignature_Invalid_Aggregation_Chain_Index_Mismatch)
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int10);
        }
        public void InternalVerificationPolicyInvalidAggregationHashChainConsistencyTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.KsiSignature_Invalid_Aggregation_Chain_Input_Hash)
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int01);
        }
        public void InternalVerificationPolicyInvalidAggregationHashChainMetadataTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.AggregationHashChainMetadataPaddingNotFirstFail)
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int11);
        }
        public void InternalVerificationPolicyInvalidRfc3161RecordChainIndexTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature = TestUtil.GetSignature(Resources.KsiSignature_Invalid_Rfc3161_Chain_Index_Mismatch),
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Int12);
        }
        public void InternalVerificationPolicyInvalidDocumentHashAlgorithmTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature    = TestUtil.GetSignature(),
                DocumentHash = new DataHash(Base16.Decode("0411A700B0C8066C47ECBA05ED37BC14DCADB238552D86C659342D1D7E87B8772DE1A7F49828C340C328C340C328C340C3"))
            };

            Verify(context, VerificationResultCode.Fail, VerificationError.Gen04);
        }
        public void InternalVerificationPolicyOkTest()
        {
            TestVerificationContext context = new TestVerificationContext()
            {
                Signature    = TestUtil.GetSignature(),
                DocumentHash = new DataHash(Base16.Decode("0111A700B0C8066C47ECBA05ED37BC14DCADB238552D86C659342D1D7E87B8772D"))
            };

            Verify(context, VerificationResultCode.Ok);
        }