|  | // Autogenerated by generate_tests.py, do not edit | 
|  |  | 
|  | // This file intentionally does not have header guards, it's intended to | 
|  | // be inlined in another header file. The following line silences a | 
|  | // presubmit warning that would otherwise be triggered by this: | 
|  | // no-include-guard-because-multiply-included | 
|  | // NOLINT(build/header_guard) | 
|  |  | 
|  | // Hack to allow disabling type parameterized test cases. | 
|  | // See https://github.com/google/googletest/issues/389 | 
|  | #define WRAPPED_TYPED_TEST_P(CaseName, TestName) \ | 
|  | TYPED_TEST_P(CaseName, TestName) | 
|  | #define WRAPPED_REGISTER_TYPED_TEST_SUITE_P(CaseName, ...) \ | 
|  | REGISTER_TYPED_TEST_SUITE_P(CaseName, __VA_ARGS__) | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest01SignatureVerification : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest01SignatureVerification); | 
|  |  | 
|  | // 4.1.1 Valid Signatures Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest01SignatureVerification, | 
|  | Section1ValidSignaturesTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidCertificatePathTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.1.1"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.1.2 Invalid CA Signature Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest01SignatureVerification, | 
|  | Section1InvalidCASignatureTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "BadSignedCACert", | 
|  | "InvalidCASignatureTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "BadSignedCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.1.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.1.3 Invalid EE Signature Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest01SignatureVerification, | 
|  | Section1InvalidEESignatureTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "InvalidEESignatureTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.1.3"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.1.4 Valid DSA Signatures Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest01SignatureVerification, | 
|  | Section1ValidDSASignaturesTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "DSACACert", | 
|  | "ValidDSASignaturesTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "DSACACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.1.4"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.1.5 Valid DSA Parameter Inheritance Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest01SignatureVerification, | 
|  | Section1ValidDSAParameterInheritanceTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "DSACACert", | 
|  | "DSAParametersInheritedCACert", | 
|  | "ValidDSAParameterInheritanceTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "DSACACRL", | 
|  | "DSAParametersInheritedCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.1.5"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.1.6 Invalid DSA Signature Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest01SignatureVerification, | 
|  | Section1InvalidDSASignatureTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "DSACACert", | 
|  | "InvalidDSASignatureTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "DSACACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.1.6"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P(PkitsTest01SignatureVerification, | 
|  | Section1ValidSignaturesTest1, | 
|  | Section1InvalidCASignatureTest2, | 
|  | Section1InvalidEESignatureTest3, | 
|  | Section1ValidDSASignaturesTest4, | 
|  | Section1ValidDSAParameterInheritanceTest5, | 
|  | Section1InvalidDSASignatureTest6); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest02ValidityPeriods : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest02ValidityPeriods); | 
|  |  | 
|  | // 4.2.1 Invalid CA notBefore Date Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest02ValidityPeriods, | 
|  | Section2InvalidCAnotBeforeDateTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BadnotBeforeDateCACert", | 
|  | "InvalidCAnotBeforeDateTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "BadnotBeforeDateCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.2.1"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.2.2 Invalid EE notBefore Date Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest02ValidityPeriods, | 
|  | Section2InvalidEEnotBeforeDateTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "InvalidEEnotBeforeDateTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.2.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.2.3 Valid pre2000 UTC notBefore Date Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest02ValidityPeriods, | 
|  | Section2Validpre2000UTCnotBeforeDateTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "Validpre2000UTCnotBeforeDateTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.2.3"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.2.4 Valid GeneralizedTime notBefore Date Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest02ValidityPeriods, | 
|  | Section2ValidGeneralizedTimenotBeforeDateTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidGeneralizedTimenotBeforeDateTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.2.4"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.2.5 Invalid CA notAfter Date Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest02ValidityPeriods, | 
|  | Section2InvalidCAnotAfterDateTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BadnotAfterDateCACert", | 
|  | "InvalidCAnotAfterDateTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "BadnotAfterDateCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.2.5"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.2.6 Invalid EE notAfter Date Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest02ValidityPeriods, | 
|  | Section2InvalidEEnotAfterDateTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "InvalidEEnotAfterDateTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.2.6"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.2.7 Invalid pre2000 UTC EE notAfter Date Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest02ValidityPeriods, | 
|  | Section2Invalidpre2000UTCEEnotAfterDateTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "Invalidpre2000UTCEEnotAfterDateTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.2.7"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.2.8 Valid GeneralizedTime notAfter Date Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest02ValidityPeriods, | 
|  | Section2ValidGeneralizedTimenotAfterDateTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidGeneralizedTimenotAfterDateTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.2.8"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest02ValidityPeriods, | 
|  | Section2InvalidCAnotBeforeDateTest1, | 
|  | Section2InvalidEEnotBeforeDateTest2, | 
|  | Section2Validpre2000UTCnotBeforeDateTest3, | 
|  | Section2ValidGeneralizedTimenotBeforeDateTest4, | 
|  | Section2InvalidCAnotAfterDateTest5, | 
|  | Section2InvalidEEnotAfterDateTest6, | 
|  | Section2Invalidpre2000UTCEEnotAfterDateTest7, | 
|  | Section2ValidGeneralizedTimenotAfterDateTest8); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest03VerifyingNameChaining : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest03VerifyingNameChaining); | 
|  |  | 
|  | // 4.3.1 Invalid Name Chaining EE Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3InvalidNameChainingEETest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "InvalidNameChainingTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.1"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.2 Invalid Name Chaining Order Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3InvalidNameChainingOrderTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "NameOrderingCACert", | 
|  | "InvalidNameChainingOrderTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "NameOrderCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.3 Valid Name Chaining Whitespace Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3ValidNameChainingWhitespaceTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidNameChainingWhitespaceTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.3"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.4 Valid Name Chaining Whitespace Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3ValidNameChainingWhitespaceTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidNameChainingWhitespaceTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.4"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.5 Valid Name Chaining Capitalization Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3ValidNameChainingCapitalizationTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidNameChainingCapitalizationTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.5"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.6 Valid Name Chaining UIDs Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3ValidNameChainingUIDsTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "UIDCACert", | 
|  | "ValidNameUIDsTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "UIDCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.6"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.7 Valid RFC3280 Mandatory Attribute Types Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3ValidRFC3280MandatoryAttributeTypesTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "RFC3280MandatoryAttributeTypesCACert", | 
|  | "ValidRFC3280MandatoryAttributeTypesTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "RFC3280MandatoryAttributeTypesCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.7"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.8 Valid RFC3280 Optional Attribute Types Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3ValidRFC3280OptionalAttributeTypesTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "RFC3280OptionalAttributeTypesCACert", | 
|  | "ValidRFC3280OptionalAttributeTypesTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "RFC3280OptionalAttributeTypesCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.8"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.9 Valid UTF8String Encoded Names Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3ValidUTF8StringEncodedNamesTest9) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "UTF8StringEncodedNamesCACert", | 
|  | "ValidUTF8StringEncodedNamesTest9EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "UTF8StringEncodedNamesCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.9"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.10 Valid Rollover from PrintableString to UTF8String Test10 | 
|  | WRAPPED_TYPED_TEST_P( | 
|  | PkitsTest03VerifyingNameChaining, | 
|  | Section3ValidRolloverfromPrintableStringtoUTF8StringTest10) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", | 
|  | "RolloverfromPrintableStringtoUTF8StringCACert", | 
|  | "ValidRolloverfromPrintableStringtoUTF8StringTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "RolloverfromPrintableStringtoUTF8StringCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.10"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.3.11 Valid UTF8String Case Insensitive Match Test11 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest03VerifyingNameChaining, | 
|  | Section3ValidUTF8StringCaseInsensitiveMatchTest11) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "UTF8StringCaseInsensitiveMatchCACert", | 
|  | "ValidUTF8StringCaseInsensitiveMatchTest11EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "UTF8StringCaseInsensitiveMatchCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.3.11"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest03VerifyingNameChaining, | 
|  | Section3InvalidNameChainingEETest1, | 
|  | Section3InvalidNameChainingOrderTest2, | 
|  | Section3ValidNameChainingWhitespaceTest3, | 
|  | Section3ValidNameChainingWhitespaceTest4, | 
|  | Section3ValidNameChainingCapitalizationTest5, | 
|  | Section3ValidNameChainingUIDsTest6, | 
|  | Section3ValidRFC3280MandatoryAttributeTypesTest7, | 
|  | Section3ValidRFC3280OptionalAttributeTypesTest8, | 
|  | Section3ValidUTF8StringEncodedNamesTest9, | 
|  | Section3ValidRolloverfromPrintableStringtoUTF8StringTest10, | 
|  | Section3ValidUTF8StringCaseInsensitiveMatchTest11); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest04BasicCertificateRevocationTests | 
|  | : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest04BasicCertificateRevocationTests); | 
|  |  | 
|  | // 4.4.1 Missing CRL Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4MissingCRLTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "NoCRLCACert", | 
|  | "InvalidMissingCRLTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.1"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.2 Invalid Revoked CA Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidRevokedCATest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "RevokedsubCACert", "InvalidRevokedCATest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL", | 
|  | "RevokedsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.3 Invalid Revoked EE Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidRevokedEETest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "InvalidRevokedEETest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.3"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.4 Invalid Bad CRL Signature Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidBadCRLSignatureTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BadCRLSignatureCACert", | 
|  | "InvalidBadCRLSignatureTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "BadCRLSignatureCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.4"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.5 Invalid Bad CRL Issuer Name Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidBadCRLIssuerNameTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BadCRLIssuerNameCACert", | 
|  | "InvalidBadCRLIssuerNameTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "BadCRLIssuerNameCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.5"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.6 Invalid Wrong CRL Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidWrongCRLTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "WrongCRLCACert", | 
|  | "InvalidWrongCRLTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "WrongCRLCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.6"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.7 Valid Two CRLs Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4ValidTwoCRLsTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "TwoCRLsCACert", | 
|  | "ValidTwoCRLsTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "TwoCRLsCAGoodCRL", | 
|  | "TwoCRLsCABadCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.7"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.8 Invalid Unknown CRL Entry Extension Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidUnknownCRLEntryExtensionTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "UnknownCRLEntryExtensionCACert", | 
|  | "InvalidUnknownCRLEntryExtensionTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "UnknownCRLEntryExtensionCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.8"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.9 Invalid Unknown CRL Extension Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidUnknownCRLExtensionTest9) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "UnknownCRLExtensionCACert", | 
|  | "InvalidUnknownCRLExtensionTest9EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "UnknownCRLExtensionCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.9"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.10 Invalid Unknown CRL Extension Test10 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidUnknownCRLExtensionTest10) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "UnknownCRLExtensionCACert", | 
|  | "InvalidUnknownCRLExtensionTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "UnknownCRLExtensionCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.10"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.11 Invalid Old CRL nextUpdate Test11 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidOldCRLnextUpdateTest11) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "OldCRLnextUpdateCACert", | 
|  | "InvalidOldCRLnextUpdateTest11EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "OldCRLnextUpdateCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.11"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.12 Invalid pre2000 CRL nextUpdate Test12 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4Invalidpre2000CRLnextUpdateTest12) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "pre2000CRLnextUpdateCACert", | 
|  | "Invalidpre2000CRLnextUpdateTest12EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "pre2000CRLnextUpdateCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.12"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.13 Valid GeneralizedTime CRL nextUpdate Test13 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4ValidGeneralizedTimeCRLnextUpdateTest13) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "GeneralizedTimeCRLnextUpdateCACert", | 
|  | "ValidGeneralizedTimeCRLnextUpdateTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "GeneralizedTimeCRLnextUpdateCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.13"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.14 Valid Negative Serial Number Test14 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4ValidNegativeSerialNumberTest14) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "NegativeSerialNumberCACert", | 
|  | "ValidNegativeSerialNumberTest14EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "NegativeSerialNumberCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.14"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.15 Invalid Negative Serial Number Test15 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidNegativeSerialNumberTest15) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "NegativeSerialNumberCACert", | 
|  | "InvalidNegativeSerialNumberTest15EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "NegativeSerialNumberCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.15"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.16 Valid Long Serial Number Test16 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4ValidLongSerialNumberTest16) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "LongSerialNumberCACert", | 
|  | "ValidLongSerialNumberTest16EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "LongSerialNumberCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.16"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.17 Valid Long Serial Number Test17 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4ValidLongSerialNumberTest17) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "LongSerialNumberCACert", | 
|  | "ValidLongSerialNumberTest17EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "LongSerialNumberCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.17"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.18 Invalid Long Serial Number Test18 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidLongSerialNumberTest18) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "LongSerialNumberCACert", | 
|  | "InvalidLongSerialNumberTest18EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "LongSerialNumberCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.18"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.19 Valid Separate Certificate and CRL Keys Test19 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4ValidSeparateCertificateandCRLKeysTest19) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", | 
|  | "SeparateCertificateandCRLKeysCertificateSigningCACert", | 
|  | "SeparateCertificateandCRLKeysCRLSigningCert", | 
|  | "ValidSeparateCertificateandCRLKeysTest19EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "SeparateCertificateandCRLKeysCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.19"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.20 Invalid Separate Certificate and CRL Keys Test20 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidSeparateCertificateandCRLKeysTest20) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", | 
|  | "SeparateCertificateandCRLKeysCertificateSigningCACert", | 
|  | "SeparateCertificateandCRLKeysCRLSigningCert", | 
|  | "InvalidSeparateCertificateandCRLKeysTest20EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "SeparateCertificateandCRLKeysCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.20"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.4.21 Invalid Separate Certificate and CRL Keys Test21 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4InvalidSeparateCertificateandCRLKeysTest21) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", | 
|  | "SeparateCertificateandCRLKeysCA2CertificateSigningCACert", | 
|  | "SeparateCertificateandCRLKeysCA2CRLSigningCert", | 
|  | "InvalidSeparateCertificateandCRLKeysTest21EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "SeparateCertificateandCRLKeysCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.4.21"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest04BasicCertificateRevocationTests, | 
|  | Section4MissingCRLTest1, | 
|  | Section4InvalidRevokedCATest2, | 
|  | Section4InvalidRevokedEETest3, | 
|  | Section4InvalidBadCRLSignatureTest4, | 
|  | Section4InvalidBadCRLIssuerNameTest5, | 
|  | Section4InvalidWrongCRLTest6, | 
|  | Section4ValidTwoCRLsTest7, | 
|  | Section4InvalidUnknownCRLEntryExtensionTest8, | 
|  | Section4InvalidUnknownCRLExtensionTest9, | 
|  | Section4InvalidUnknownCRLExtensionTest10, | 
|  | Section4InvalidOldCRLnextUpdateTest11, | 
|  | Section4Invalidpre2000CRLnextUpdateTest12, | 
|  | Section4ValidGeneralizedTimeCRLnextUpdateTest13, | 
|  | Section4ValidNegativeSerialNumberTest14, | 
|  | Section4InvalidNegativeSerialNumberTest15, | 
|  | Section4ValidLongSerialNumberTest16, | 
|  | Section4ValidLongSerialNumberTest17, | 
|  | Section4InvalidLongSerialNumberTest18, | 
|  | Section4ValidSeparateCertificateandCRLKeysTest19, | 
|  | Section4InvalidSeparateCertificateandCRLKeysTest20, | 
|  | Section4InvalidSeparateCertificateandCRLKeysTest21); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest05VerifyingPathswithSelfIssuedCertificates | 
|  | : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest05VerifyingPathswithSelfIssuedCertificates); | 
|  |  | 
|  | // 4.5.1 Valid Basic Self-Issued Old With New Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest05VerifyingPathswithSelfIssuedCertificates, | 
|  | Section5ValidBasicSelfIssuedOldWithNewTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BasicSelfIssuedNewKeyCACert", | 
|  | "BasicSelfIssuedNewKeyOldWithNewCACert", | 
|  | "ValidBasicSelfIssuedOldWithNewTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "BasicSelfIssuedNewKeyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.5.1"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.5.2 Invalid Basic Self-Issued Old With New Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest05VerifyingPathswithSelfIssuedCertificates, | 
|  | Section5InvalidBasicSelfIssuedOldWithNewTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BasicSelfIssuedNewKeyCACert", | 
|  | "BasicSelfIssuedNewKeyOldWithNewCACert", | 
|  | "InvalidBasicSelfIssuedOldWithNewTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "BasicSelfIssuedNewKeyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.5.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.5.3 Valid Basic Self-Issued New With Old Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest05VerifyingPathswithSelfIssuedCertificates, | 
|  | Section5ValidBasicSelfIssuedNewWithOldTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BasicSelfIssuedOldKeyCACert", | 
|  | "BasicSelfIssuedOldKeyNewWithOldCACert", | 
|  | "ValidBasicSelfIssuedNewWithOldTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "BasicSelfIssuedOldKeySelfIssuedCertCRL", | 
|  | "BasicSelfIssuedOldKeyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.5.3"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.5.4 Valid Basic Self-Issued New With Old Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest05VerifyingPathswithSelfIssuedCertificates, | 
|  | Section5ValidBasicSelfIssuedNewWithOldTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BasicSelfIssuedOldKeyCACert", | 
|  | "BasicSelfIssuedOldKeyNewWithOldCACert", | 
|  | "ValidBasicSelfIssuedNewWithOldTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "BasicSelfIssuedOldKeySelfIssuedCertCRL", | 
|  | "BasicSelfIssuedOldKeyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.5.4"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.5.5 Invalid Basic Self-Issued New With Old Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest05VerifyingPathswithSelfIssuedCertificates, | 
|  | Section5InvalidBasicSelfIssuedNewWithOldTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BasicSelfIssuedOldKeyCACert", | 
|  | "BasicSelfIssuedOldKeyNewWithOldCACert", | 
|  | "InvalidBasicSelfIssuedNewWithOldTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "BasicSelfIssuedOldKeySelfIssuedCertCRL", | 
|  | "BasicSelfIssuedOldKeyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.5.5"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.5.6 Valid Basic Self-Issued CRL Signing Key Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest05VerifyingPathswithSelfIssuedCertificates, | 
|  | Section5ValidBasicSelfIssuedCRLSigningKeyTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BasicSelfIssuedCRLSigningKeyCACert", | 
|  | "BasicSelfIssuedCRLSigningKeyCRLCert", | 
|  | "ValidBasicSelfIssuedCRLSigningKeyTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "BasicSelfIssuedCRLSigningKeyCRLCertCRL", | 
|  | "BasicSelfIssuedCRLSigningKeyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.5.6"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.5.7 Invalid Basic Self-Issued CRL Signing Key Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest05VerifyingPathswithSelfIssuedCertificates, | 
|  | Section5InvalidBasicSelfIssuedCRLSigningKeyTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BasicSelfIssuedCRLSigningKeyCACert", | 
|  | "BasicSelfIssuedCRLSigningKeyCRLCert", | 
|  | "InvalidBasicSelfIssuedCRLSigningKeyTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "BasicSelfIssuedCRLSigningKeyCRLCertCRL", | 
|  | "BasicSelfIssuedCRLSigningKeyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.5.7"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.5.8 Invalid Basic Self-Issued CRL Signing Key Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest05VerifyingPathswithSelfIssuedCertificates, | 
|  | Section5InvalidBasicSelfIssuedCRLSigningKeyTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "BasicSelfIssuedCRLSigningKeyCACert", | 
|  | "BasicSelfIssuedCRLSigningKeyCRLCert", | 
|  | "InvalidBasicSelfIssuedCRLSigningKeyTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "BasicSelfIssuedCRLSigningKeyCRLCertCRL", | 
|  | "BasicSelfIssuedCRLSigningKeyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.5.8"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest05VerifyingPathswithSelfIssuedCertificates, | 
|  | Section5ValidBasicSelfIssuedOldWithNewTest1, | 
|  | Section5InvalidBasicSelfIssuedOldWithNewTest2, | 
|  | Section5ValidBasicSelfIssuedNewWithOldTest3, | 
|  | Section5ValidBasicSelfIssuedNewWithOldTest4, | 
|  | Section5InvalidBasicSelfIssuedNewWithOldTest5, | 
|  | Section5ValidBasicSelfIssuedCRLSigningKeyTest6, | 
|  | Section5InvalidBasicSelfIssuedCRLSigningKeyTest7, | 
|  | Section5InvalidBasicSelfIssuedCRLSigningKeyTest8); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest06VerifyingBasicConstraints | 
|  | : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest06VerifyingBasicConstraints); | 
|  |  | 
|  | // 4.6.1 Invalid Missing basicConstraints Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidMissingbasicConstraintsTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "MissingbasicConstraintsCACert", | 
|  | "InvalidMissingbasicConstraintsTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "MissingbasicConstraintsCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.1"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.2 Invalid cA False Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidcAFalseTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "basicConstraintsCriticalcAFalseCACert", | 
|  | "InvalidcAFalseTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "basicConstraintsCriticalcAFalseCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.3 Invalid cA False Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidcAFalseTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "basicConstraintsNotCriticalcAFalseCACert", | 
|  | "InvalidcAFalseTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "basicConstraintsNotCriticalcAFalseCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.3"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.4 Valid basicConstraints Not Critical Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6ValidbasicConstraintsNotCriticalTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "basicConstraintsNotCriticalCACert", | 
|  | "ValidbasicConstraintsNotCriticalTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "basicConstraintsNotCriticalCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.4"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.5 Invalid pathLenConstraint Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidpathLenConstraintTest5) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "pathLenConstraint0CACert", | 
|  | "pathLenConstraint0subCACert", "InvalidpathLenConstraintTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint0CACRL", | 
|  | "pathLenConstraint0subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.5"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.6 Invalid pathLenConstraint Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidpathLenConstraintTest6) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "pathLenConstraint0CACert", | 
|  | "pathLenConstraint0subCACert", "InvalidpathLenConstraintTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint0CACRL", | 
|  | "pathLenConstraint0subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.6"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.7 Valid pathLenConstraint Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6ValidpathLenConstraintTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "pathLenConstraint0CACert", | 
|  | "ValidpathLenConstraintTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint0CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.7"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.8 Valid pathLenConstraint Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6ValidpathLenConstraintTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "pathLenConstraint0CACert", | 
|  | "ValidpathLenConstraintTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint0CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.8"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.9 Invalid pathLenConstraint Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidpathLenConstraintTest9) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "pathLenConstraint6CACert", | 
|  | "pathLenConstraint6subCA0Cert", "pathLenConstraint6subsubCA00Cert", | 
|  | "InvalidpathLenConstraintTest9EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint6CACRL", | 
|  | "pathLenConstraint6subCA0CRL", | 
|  | "pathLenConstraint6subsubCA00CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.9"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.10 Invalid pathLenConstraint Test10 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidpathLenConstraintTest10) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "pathLenConstraint6CACert", | 
|  | "pathLenConstraint6subCA0Cert", "pathLenConstraint6subsubCA00Cert", | 
|  | "InvalidpathLenConstraintTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint6CACRL", | 
|  | "pathLenConstraint6subCA0CRL", | 
|  | "pathLenConstraint6subsubCA00CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.10"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.11 Invalid pathLenConstraint Test11 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidpathLenConstraintTest11) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "pathLenConstraint6CACert", | 
|  | "pathLenConstraint6subCA1Cert", | 
|  | "pathLenConstraint6subsubCA11Cert", | 
|  | "pathLenConstraint6subsubsubCA11XCert", | 
|  | "InvalidpathLenConstraintTest11EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint6CACRL", | 
|  | "pathLenConstraint6subCA1CRL", | 
|  | "pathLenConstraint6subsubCA11CRL", | 
|  | "pathLenConstraint6subsubsubCA11XCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.11"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.12 Invalid pathLenConstraint Test12 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidpathLenConstraintTest12) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "pathLenConstraint6CACert", | 
|  | "pathLenConstraint6subCA1Cert", | 
|  | "pathLenConstraint6subsubCA11Cert", | 
|  | "pathLenConstraint6subsubsubCA11XCert", | 
|  | "InvalidpathLenConstraintTest12EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint6CACRL", | 
|  | "pathLenConstraint6subCA1CRL", | 
|  | "pathLenConstraint6subsubCA11CRL", | 
|  | "pathLenConstraint6subsubsubCA11XCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.12"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.13 Valid pathLenConstraint Test13 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6ValidpathLenConstraintTest13) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "pathLenConstraint6CACert", | 
|  | "pathLenConstraint6subCA4Cert", | 
|  | "pathLenConstraint6subsubCA41Cert", | 
|  | "pathLenConstraint6subsubsubCA41XCert", | 
|  | "ValidpathLenConstraintTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint6CACRL", | 
|  | "pathLenConstraint6subCA4CRL", | 
|  | "pathLenConstraint6subsubCA41CRL", | 
|  | "pathLenConstraint6subsubsubCA41XCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.13"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.14 Valid pathLenConstraint Test14 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6ValidpathLenConstraintTest14) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "pathLenConstraint6CACert", | 
|  | "pathLenConstraint6subCA4Cert", | 
|  | "pathLenConstraint6subsubCA41Cert", | 
|  | "pathLenConstraint6subsubsubCA41XCert", | 
|  | "ValidpathLenConstraintTest14EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint6CACRL", | 
|  | "pathLenConstraint6subCA4CRL", | 
|  | "pathLenConstraint6subsubCA41CRL", | 
|  | "pathLenConstraint6subsubsubCA41XCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.14"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.15 Valid Self-Issued pathLenConstraint Test15 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6ValidSelfIssuedpathLenConstraintTest15) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "pathLenConstraint0CACert", | 
|  | "pathLenConstraint0SelfIssuedCACert", | 
|  | "ValidSelfIssuedpathLenConstraintTest15EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint0CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.15"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.16 Invalid Self-Issued pathLenConstraint Test16 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidSelfIssuedpathLenConstraintTest16) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "pathLenConstraint0CACert", | 
|  | "pathLenConstraint0SelfIssuedCACert", "pathLenConstraint0subCA2Cert", | 
|  | "InvalidSelfIssuedpathLenConstraintTest16EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint0CACRL", | 
|  | "pathLenConstraint0subCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.16"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.6.17 Valid Self-Issued pathLenConstraint Test17 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest06VerifyingBasicConstraints, | 
|  | Section6ValidSelfIssuedpathLenConstraintTest17) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "pathLenConstraint1CACert", | 
|  | "pathLenConstraint1SelfIssuedCACert", | 
|  | "pathLenConstraint1subCACert", | 
|  | "pathLenConstraint1SelfIssuedsubCACert", | 
|  | "ValidSelfIssuedpathLenConstraintTest17EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "pathLenConstraint1CACRL", | 
|  | "pathLenConstraint1subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.6.17"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest06VerifyingBasicConstraints, | 
|  | Section6InvalidMissingbasicConstraintsTest1, | 
|  | Section6InvalidcAFalseTest2, | 
|  | Section6InvalidcAFalseTest3, | 
|  | Section6ValidbasicConstraintsNotCriticalTest4, | 
|  | Section6InvalidpathLenConstraintTest5, | 
|  | Section6InvalidpathLenConstraintTest6, | 
|  | Section6ValidpathLenConstraintTest7, | 
|  | Section6ValidpathLenConstraintTest8, | 
|  | Section6InvalidpathLenConstraintTest9, | 
|  | Section6InvalidpathLenConstraintTest10, | 
|  | Section6InvalidpathLenConstraintTest11, | 
|  | Section6InvalidpathLenConstraintTest12, | 
|  | Section6ValidpathLenConstraintTest13, | 
|  | Section6ValidpathLenConstraintTest14, | 
|  | Section6ValidSelfIssuedpathLenConstraintTest15, | 
|  | Section6InvalidSelfIssuedpathLenConstraintTest16, | 
|  | Section6ValidSelfIssuedpathLenConstraintTest17); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest07KeyUsage : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest07KeyUsage); | 
|  |  | 
|  | // 4.7.1 Invalid keyUsage Critical keyCertSign False Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest07KeyUsage, | 
|  | Section7InvalidkeyUsageCriticalkeyCertSignFalseTest1) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "keyUsageCriticalkeyCertSignFalseCACert", | 
|  | "InvalidkeyUsageCriticalkeyCertSignFalseTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "keyUsageCriticalkeyCertSignFalseCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.7.1"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.7.2 Invalid keyUsage Not Critical keyCertSign False Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest07KeyUsage, | 
|  | Section7InvalidkeyUsageNotCriticalkeyCertSignFalseTest2) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "keyUsageNotCriticalkeyCertSignFalseCACert", | 
|  | "InvalidkeyUsageNotCriticalkeyCertSignFalseTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "keyUsageNotCriticalkeyCertSignFalseCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.7.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.7.3 Valid keyUsage Not Critical Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest07KeyUsage, | 
|  | Section7ValidkeyUsageNotCriticalTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "keyUsageNotCriticalCACert", | 
|  | "ValidkeyUsageNotCriticalTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "keyUsageNotCriticalCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.7.3"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.7.4 Invalid keyUsage Critical cRLSign False Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest07KeyUsage, | 
|  | Section7InvalidkeyUsageCriticalcRLSignFalseTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "keyUsageCriticalcRLSignFalseCACert", | 
|  | "InvalidkeyUsageCriticalcRLSignFalseTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "keyUsageCriticalcRLSignFalseCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.7.4"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.7.5 Invalid keyUsage Not Critical cRLSign False Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest07KeyUsage, | 
|  | Section7InvalidkeyUsageNotCriticalcRLSignFalseTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "keyUsageNotCriticalcRLSignFalseCACert", | 
|  | "InvalidkeyUsageNotCriticalcRLSignFalseTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "keyUsageNotCriticalcRLSignFalseCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.7.5"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest07KeyUsage, | 
|  | Section7InvalidkeyUsageCriticalkeyCertSignFalseTest1, | 
|  | Section7InvalidkeyUsageNotCriticalkeyCertSignFalseTest2, | 
|  | Section7ValidkeyUsageNotCriticalTest3, | 
|  | Section7InvalidkeyUsageCriticalcRLSignFalseTest4, | 
|  | Section7InvalidkeyUsageNotCriticalcRLSignFalseTest5); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest08CertificatePolicies : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest08CertificatePolicies); | 
|  |  | 
|  | // 4.8.1 All Certificates Same Policy Test1 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePolicyTest1Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidCertificatePathTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.1"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialExplicitPolicy(true); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.1 All Certificates Same Policy Test1 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePolicyTest1Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidCertificatePathTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.1"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  | info.SetInitialExplicitPolicy(true); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.1 All Certificates Same Policy Test1 (Subpart 3) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePolicyTest1Subpart3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidCertificatePathTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.1"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetInitialExplicitPolicy(true); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.1 All Certificates Same Policy Test1 (Subpart 4) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePolicyTest1Subpart4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "ValidCertificatePathTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.1"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1,NIST-test-policy-2"); | 
|  | info.SetInitialExplicitPolicy(true); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.2 All Certificates No Policies Test2 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesNoPoliciesTest2Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "NoPoliciesCACert", | 
|  | "AllCertificatesNoPoliciesTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "NoPoliciesCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.2"; | 
|  | info.should_validate = true; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.2 All Certificates No Policies Test2 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesNoPoliciesTest2Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "NoPoliciesCACert", | 
|  | "AllCertificatesNoPoliciesTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "NoPoliciesCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.2"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialExplicitPolicy(true); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.3 Different Policies Test3 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8DifferentPoliciesTest3Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "PoliciesP2subCACert", | 
|  | "DifferentPoliciesTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL", | 
|  | "PoliciesP2subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.3"; | 
|  | info.should_validate = true; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.3 Different Policies Test3 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8DifferentPoliciesTest3Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "PoliciesP2subCACert", | 
|  | "DifferentPoliciesTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL", | 
|  | "PoliciesP2subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.3"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialExplicitPolicy(true); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.3 Different Policies Test3 (Subpart 3) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8DifferentPoliciesTest3Subpart3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "PoliciesP2subCACert", | 
|  | "DifferentPoliciesTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL", | 
|  | "PoliciesP2subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.3"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1,NIST-test-policy-2"); | 
|  | info.SetInitialExplicitPolicy(true); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.4 Different Policies Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8DifferentPoliciesTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "GoodsubCACert", "DifferentPoliciesTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL", | 
|  | "GoodsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.4"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.5 Different Policies Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8DifferentPoliciesTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "PoliciesP2subCA2Cert", | 
|  | "DifferentPoliciesTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL", | 
|  | "PoliciesP2subCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.5"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.6 Overlapping Policies Test6 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8OverlappingPoliciesTest6Subpart1) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "PoliciesP1234CACert", | 
|  | "PoliciesP1234subCAP123Cert", "PoliciesP1234subsubCAP123P12Cert", | 
|  | "OverlappingPoliciesTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP1234CACRL", | 
|  | "PoliciesP1234subCAP123CRL", | 
|  | "PoliciesP1234subsubCAP123P12CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.6"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.6 Overlapping Policies Test6 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8OverlappingPoliciesTest6Subpart2) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "PoliciesP1234CACert", | 
|  | "PoliciesP1234subCAP123Cert", "PoliciesP1234subsubCAP123P12Cert", | 
|  | "OverlappingPoliciesTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP1234CACRL", | 
|  | "PoliciesP1234subCAP123CRL", | 
|  | "PoliciesP1234subsubCAP123P12CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.6"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.6 Overlapping Policies Test6 (Subpart 3) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8OverlappingPoliciesTest6Subpart3) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "PoliciesP1234CACert", | 
|  | "PoliciesP1234subCAP123Cert", "PoliciesP1234subsubCAP123P12Cert", | 
|  | "OverlappingPoliciesTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP1234CACRL", | 
|  | "PoliciesP1234subCAP123CRL", | 
|  | "PoliciesP1234subsubCAP123P12CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.6"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.7 Different Policies Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8DifferentPoliciesTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP123CACert", "PoliciesP123subCAP12Cert", | 
|  | "PoliciesP123subsubCAP12P1Cert", | 
|  | "DifferentPoliciesTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP123CACRL", | 
|  | "PoliciesP123subCAP12CRL", | 
|  | "PoliciesP123subsubCAP12P1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.7"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.8 Different Policies Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8DifferentPoliciesTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP12CACert", "PoliciesP12subCAP1Cert", | 
|  | "PoliciesP12subsubCAP1P2Cert", | 
|  | "DifferentPoliciesTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP12CACRL", | 
|  | "PoliciesP12subCAP1CRL", | 
|  | "PoliciesP12subsubCAP1P2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.8"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.9 Different Policies Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8DifferentPoliciesTest9) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate",         "PoliciesP123CACert", | 
|  | "PoliciesP123subCAP12Cert",           "PoliciesP123subsubCAP12P2Cert", | 
|  | "PoliciesP123subsubsubCAP12P2P1Cert", "DifferentPoliciesTest9EE"}; | 
|  | const char* const crls[] = { | 
|  | "TrustAnchorRootCRL", "PoliciesP123CACRL", "PoliciesP123subCAP12CRL", | 
|  | "PoliciesP123subsubCAP2P2CRL", "PoliciesP123subsubsubCAP12P2P1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.9"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.10 All Certificates Same Policies Test10 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePoliciesTest10Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP12CACert", | 
|  | "AllCertificatesSamePoliciesTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP12CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.10"; | 
|  | info.should_validate = true; | 
|  | info.SetUserConstrainedPolicySet("NIST-test-policy-1,NIST-test-policy-2"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.10 All Certificates Same Policies Test10 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePoliciesTest10Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP12CACert", | 
|  | "AllCertificatesSamePoliciesTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP12CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.10"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.10 All Certificates Same Policies Test10 (Subpart 3) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePoliciesTest10Subpart3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP12CACert", | 
|  | "AllCertificatesSamePoliciesTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP12CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.10"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetUserConstrainedPolicySet("NIST-test-policy-2"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.11 All Certificates AnyPolicy Test11 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesAnyPolicyTest11Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "anyPolicyCACert", | 
|  | "AllCertificatesanyPolicyTest11EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "anyPolicyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.11"; | 
|  | info.should_validate = true; | 
|  | info.SetUserConstrainedPolicySet("anyPolicy"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.11 All Certificates AnyPolicy Test11 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesAnyPolicyTest11Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "anyPolicyCACert", | 
|  | "AllCertificatesanyPolicyTest11EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "anyPolicyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.11"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.12 Different Policies Test12 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8DifferentPoliciesTest12) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "PoliciesP3CACert", | 
|  | "DifferentPoliciesTest12EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP3CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.12"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.13 All Certificates Same Policies Test13 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePoliciesTest13Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP123CACert", | 
|  | "AllCertificatesSamePoliciesTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP123CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.13"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.13 All Certificates Same Policies Test13 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePoliciesTest13Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP123CACert", | 
|  | "AllCertificatesSamePoliciesTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP123CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.13"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetUserConstrainedPolicySet("NIST-test-policy-2"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.13 All Certificates Same Policies Test13 (Subpart 3) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePoliciesTest13Subpart3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP123CACert", | 
|  | "AllCertificatesSamePoliciesTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP123CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.13"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-3"); | 
|  | info.SetUserConstrainedPolicySet("NIST-test-policy-3"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.14 AnyPolicy Test14 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AnyPolicyTest14Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "anyPolicyCACert", | 
|  | "AnyPolicyTest14EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "anyPolicyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.14"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.14 AnyPolicy Test14 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8AnyPolicyTest14Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "anyPolicyCACert", | 
|  | "AnyPolicyTest14EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "anyPolicyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.14"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.15 User Notice Qualifier Test15 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8UserNoticeQualifierTest15) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "UserNoticeQualifierTest15EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.15"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.16 User Notice Qualifier Test16 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8UserNoticeQualifierTest16) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "UserNoticeQualifierTest16EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.16"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.17 User Notice Qualifier Test17 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8UserNoticeQualifierTest17) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "UserNoticeQualifierTest17EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.17"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.18 User Notice Qualifier Test18 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8UserNoticeQualifierTest18Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP12CACert", | 
|  | "UserNoticeQualifierTest18EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP12CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.18"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.18 User Notice Qualifier Test18 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8UserNoticeQualifierTest18Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PoliciesP12CACert", | 
|  | "UserNoticeQualifierTest18EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "PoliciesP12CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.18"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetUserConstrainedPolicySet("NIST-test-policy-2"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.19 User Notice Qualifier Test19 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8UserNoticeQualifierTest19) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "UserNoticeQualifierTest19EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.19"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.8.20 CPS Pointer Qualifier Test20 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest08CertificatePolicies, | 
|  | Section8CPSPointerQualifierTest20) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "CPSPointerQualifierTest20EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.8.20"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  | info.SetInitialExplicitPolicy(true); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest08CertificatePolicies, | 
|  | Section8AllCertificatesSamePolicyTest1Subpart1, | 
|  | Section8AllCertificatesSamePolicyTest1Subpart2, | 
|  | Section8AllCertificatesSamePolicyTest1Subpart3, | 
|  | Section8AllCertificatesSamePolicyTest1Subpart4, | 
|  | Section8AllCertificatesNoPoliciesTest2Subpart1, | 
|  | Section8AllCertificatesNoPoliciesTest2Subpart2, | 
|  | Section8DifferentPoliciesTest3Subpart1, | 
|  | Section8DifferentPoliciesTest3Subpart2, | 
|  | Section8DifferentPoliciesTest3Subpart3, | 
|  | Section8DifferentPoliciesTest4, | 
|  | Section8DifferentPoliciesTest5, | 
|  | Section8OverlappingPoliciesTest6Subpart1, | 
|  | Section8OverlappingPoliciesTest6Subpart2, | 
|  | Section8OverlappingPoliciesTest6Subpart3, | 
|  | Section8DifferentPoliciesTest7, | 
|  | Section8DifferentPoliciesTest8, | 
|  | Section8DifferentPoliciesTest9, | 
|  | Section8AllCertificatesSamePoliciesTest10Subpart1, | 
|  | Section8AllCertificatesSamePoliciesTest10Subpart2, | 
|  | Section8AllCertificatesSamePoliciesTest10Subpart3, | 
|  | Section8AllCertificatesAnyPolicyTest11Subpart1, | 
|  | Section8AllCertificatesAnyPolicyTest11Subpart2, | 
|  | Section8DifferentPoliciesTest12, | 
|  | Section8AllCertificatesSamePoliciesTest13Subpart1, | 
|  | Section8AllCertificatesSamePoliciesTest13Subpart2, | 
|  | Section8AllCertificatesSamePoliciesTest13Subpart3, | 
|  | Section8AnyPolicyTest14Subpart1, | 
|  | Section8AnyPolicyTest14Subpart2, | 
|  | Section8UserNoticeQualifierTest15, | 
|  | Section8UserNoticeQualifierTest16, | 
|  | Section8UserNoticeQualifierTest17, | 
|  | Section8UserNoticeQualifierTest18Subpart1, | 
|  | Section8UserNoticeQualifierTest18Subpart2, | 
|  | Section8UserNoticeQualifierTest19, | 
|  | Section8CPSPointerQualifierTest20); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest09RequireExplicitPolicy : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest09RequireExplicitPolicy); | 
|  |  | 
|  | // 4.9.1 Valid RequireExplicitPolicy Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest09RequireExplicitPolicy, | 
|  | Section9ValidRequireExplicitPolicyTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "requireExplicitPolicy10CACert", | 
|  | "requireExplicitPolicy10subCACert", | 
|  | "requireExplicitPolicy10subsubCACert", | 
|  | "requireExplicitPolicy10subsubsubCACert", | 
|  | "ValidrequireExplicitPolicyTest1EE"}; | 
|  | const char* const crls[] = { | 
|  | "TrustAnchorRootCRL", "requireExplicitPolicy10CACRL", | 
|  | "requireExplicitPolicy10subCACRL", "requireExplicitPolicy10subsubCACRL", | 
|  | "requireExplicitPolicy10subsubsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.9.1"; | 
|  | info.should_validate = true; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.9.2 Valid RequireExplicitPolicy Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest09RequireExplicitPolicy, | 
|  | Section9ValidRequireExplicitPolicyTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "requireExplicitPolicy5CACert", | 
|  | "requireExplicitPolicy5subCACert", | 
|  | "requireExplicitPolicy5subsubCACert", | 
|  | "requireExplicitPolicy5subsubsubCACert", | 
|  | "ValidrequireExplicitPolicyTest2EE"}; | 
|  | const char* const crls[] = { | 
|  | "TrustAnchorRootCRL", "requireExplicitPolicy5CACRL", | 
|  | "requireExplicitPolicy5subCACRL", "requireExplicitPolicy5subsubCACRL", | 
|  | "requireExplicitPolicy5subsubsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.9.2"; | 
|  | info.should_validate = true; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.9.3 Invalid RequireExplicitPolicy Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest09RequireExplicitPolicy, | 
|  | Section9InvalidRequireExplicitPolicyTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "requireExplicitPolicy4CACert", | 
|  | "requireExplicitPolicy4subCACert", | 
|  | "requireExplicitPolicy4subsubCACert", | 
|  | "requireExplicitPolicy4subsubsubCACert", | 
|  | "InvalidrequireExplicitPolicyTest3EE"}; | 
|  | const char* const crls[] = { | 
|  | "TrustAnchorRootCRL", "requireExplicitPolicy4CACRL", | 
|  | "requireExplicitPolicy4subCACRL", "requireExplicitPolicy4subsubCACRL", | 
|  | "requireExplicitPolicy4subsubsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.9.3"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.9.4 Valid RequireExplicitPolicy Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest09RequireExplicitPolicy, | 
|  | Section9ValidRequireExplicitPolicyTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "requireExplicitPolicy0CACert", | 
|  | "requireExplicitPolicy0subCACert", | 
|  | "requireExplicitPolicy0subsubCACert", | 
|  | "requireExplicitPolicy0subsubsubCACert", | 
|  | "ValidrequireExplicitPolicyTest4EE"}; | 
|  | const char* const crls[] = { | 
|  | "TrustAnchorRootCRL", "requireExplicitPolicy0CACRL", | 
|  | "requireExplicitPolicy0subCACRL", "requireExplicitPolicy0subsubCACRL", | 
|  | "requireExplicitPolicy0subsubsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.9.4"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.9.5 Invalid RequireExplicitPolicy Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest09RequireExplicitPolicy, | 
|  | Section9InvalidRequireExplicitPolicyTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "requireExplicitPolicy7CACert", | 
|  | "requireExplicitPolicy7subCARE2Cert", | 
|  | "requireExplicitPolicy7subsubCARE2RE4Cert", | 
|  | "requireExplicitPolicy7subsubsubCARE2RE4Cert", | 
|  | "InvalidrequireExplicitPolicyTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "requireExplicitPolicy7CACRL", | 
|  | "requireExplicitPolicy7subCARE2CRL", | 
|  | "requireExplicitPolicy7subsubCARE2RE4CRL", | 
|  | "requireExplicitPolicy7subsubsubCARE2RE4CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.9.5"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.9.6 Valid Self-Issued requireExplicitPolicy Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest09RequireExplicitPolicy, | 
|  | Section9ValidSelfIssuedrequireExplicitPolicyTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "requireExplicitPolicy2CACert", | 
|  | "requireExplicitPolicy2SelfIssuedCACert", | 
|  | "ValidSelfIssuedrequireExplicitPolicyTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "requireExplicitPolicy2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.9.6"; | 
|  | info.should_validate = true; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.9.7 Invalid Self-Issued requireExplicitPolicy Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest09RequireExplicitPolicy, | 
|  | Section9InvalidSelfIssuedrequireExplicitPolicyTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "requireExplicitPolicy2CACert", | 
|  | "requireExplicitPolicy2SelfIssuedCACert", | 
|  | "requireExplicitPolicy2subCACert", | 
|  | "InvalidSelfIssuedrequireExplicitPolicyTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "requireExplicitPolicy2CACRL", | 
|  | "requireExplicitPolicy2subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.9.7"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.9.8 Invalid Self-Issued requireExplicitPolicy Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest09RequireExplicitPolicy, | 
|  | Section9InvalidSelfIssuedrequireExplicitPolicyTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "requireExplicitPolicy2CACert", | 
|  | "requireExplicitPolicy2SelfIssuedCACert", | 
|  | "requireExplicitPolicy2subCACert", | 
|  | "requireExplicitPolicy2SelfIssuedsubCACert", | 
|  | "InvalidSelfIssuedrequireExplicitPolicyTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "requireExplicitPolicy2CACRL", | 
|  | "requireExplicitPolicy2subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.9.8"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest09RequireExplicitPolicy, | 
|  | Section9ValidRequireExplicitPolicyTest1, | 
|  | Section9ValidRequireExplicitPolicyTest2, | 
|  | Section9InvalidRequireExplicitPolicyTest3, | 
|  | Section9ValidRequireExplicitPolicyTest4, | 
|  | Section9InvalidRequireExplicitPolicyTest5, | 
|  | Section9ValidSelfIssuedrequireExplicitPolicyTest6, | 
|  | Section9InvalidSelfIssuedrequireExplicitPolicyTest7, | 
|  | Section9InvalidSelfIssuedrequireExplicitPolicyTest8); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest10PolicyMappings : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest10PolicyMappings); | 
|  |  | 
|  | // 4.10.1 Valid Policy Mapping Test1 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest1Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "Mapping1to2CACert", | 
|  | "ValidPolicyMappingTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "Mapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.1.1"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.1 Valid Policy Mapping Test1 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest1Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "Mapping1to2CACert", | 
|  | "ValidPolicyMappingTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "Mapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.1.2"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.1 Valid Policy Mapping Test1 (Subpart 3) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest1Subpart3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "Mapping1to2CACert", | 
|  | "ValidPolicyMappingTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "Mapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.1.3"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicyMappingInhibit(true); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.2 Invalid Policy Mapping Test2 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10InvalidPolicyMappingTest2Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "Mapping1to2CACert", | 
|  | "InvalidPolicyMappingTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "Mapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.2"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.2 Invalid Policy Mapping Test2 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10InvalidPolicyMappingTest2Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "Mapping1to2CACert", | 
|  | "InvalidPolicyMappingTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "Mapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.2"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicyMappingInhibit(true); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.3 Valid Policy Mapping Test3 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest3Subpart1) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "P12Mapping1to3CACert", | 
|  | "P12Mapping1to3subCACert", "P12Mapping1to3subsubCACert", | 
|  | "ValidPolicyMappingTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "P12Mapping1to3CACRL", | 
|  | "P12Mapping1to3subCACRL", | 
|  | "P12Mapping1to3subsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.3"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.3 Valid Policy Mapping Test3 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest3Subpart2) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "P12Mapping1to3CACert", | 
|  | "P12Mapping1to3subCACert", "P12Mapping1to3subsubCACert", | 
|  | "ValidPolicyMappingTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "P12Mapping1to3CACRL", | 
|  | "P12Mapping1to3subCACRL", | 
|  | "P12Mapping1to3subsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.3"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetUserConstrainedPolicySet("NIST-test-policy-2"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.4 Invalid Policy Mapping Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10InvalidPolicyMappingTest4) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "P12Mapping1to3CACert", | 
|  | "P12Mapping1to3subCACert", "P12Mapping1to3subsubCACert", | 
|  | "InvalidPolicyMappingTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "P12Mapping1to3CACRL", | 
|  | "P12Mapping1to3subCACRL", | 
|  | "P12Mapping1to3subsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.4"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.5 Valid Policy Mapping Test5 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest5Subpart1) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "P1Mapping1to234CACert", | 
|  | "P1Mapping1to234subCACert", "ValidPolicyMappingTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "P1Mapping1to234CACRL", | 
|  | "P1Mapping1to234subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.5"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.5 Valid Policy Mapping Test5 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest5Subpart2) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "P1Mapping1to234CACert", | 
|  | "P1Mapping1to234subCACert", "ValidPolicyMappingTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "P1Mapping1to234CACRL", | 
|  | "P1Mapping1to234subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.5"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicySet("NIST-test-policy-6"); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.6 Valid Policy Mapping Test6 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest6Subpart1) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "P1Mapping1to234CACert", | 
|  | "P1Mapping1to234subCACert", "ValidPolicyMappingTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "P1Mapping1to234CACRL", | 
|  | "P1Mapping1to234subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.6"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.6 Valid Policy Mapping Test6 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest6Subpart2) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "P1Mapping1to234CACert", | 
|  | "P1Mapping1to234subCACert", "ValidPolicyMappingTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "P1Mapping1to234CACRL", | 
|  | "P1Mapping1to234subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.6"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicySet("NIST-test-policy-6"); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.7 Invalid Mapping From anyPolicy Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10InvalidMappingFromanyPolicyTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "MappingFromanyPolicyCACert", | 
|  | "InvalidMappingFromanyPolicyTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "MappingFromanyPolicyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.7"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.8 Invalid Mapping To anyPolicy Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10InvalidMappingToanyPolicyTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "MappingToanyPolicyCACert", | 
|  | "InvalidMappingToanyPolicyTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "MappingToanyPolicyCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.8"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.9 Valid Policy Mapping Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest9) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "PanyPolicyMapping1to2CACert", | 
|  | "ValidPolicyMappingTest9EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "PanyPolicyMapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.9"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.10 Invalid Policy Mapping Test10 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10InvalidPolicyMappingTest10) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "GoodsubCAPanyPolicyMapping1to2CACert", | 
|  | "InvalidPolicyMappingTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL", | 
|  | "GoodsubCAPanyPolicyMapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.10"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.11 Valid Policy Mapping Test11 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest11) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "GoodCACert", | 
|  | "GoodsubCAPanyPolicyMapping1to2CACert", | 
|  | "ValidPolicyMappingTest11EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL", | 
|  | "GoodsubCAPanyPolicyMapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.11"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.12 Valid Policy Mapping Test12 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest12Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "P12Mapping1to3CACert", | 
|  | "ValidPolicyMappingTest12EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "P12Mapping1to3CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.12"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.12 Valid Policy Mapping Test12 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest12Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "P12Mapping1to3CACert", | 
|  | "ValidPolicyMappingTest12EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "P12Mapping1to3CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.12"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetUserConstrainedPolicySet("NIST-test-policy-2"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.13 Valid Policy Mapping Test13 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest13Subpart1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "P1anyPolicyMapping1to2CACert", | 
|  | "ValidPolicyMappingTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "P1anyPolicyMapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.13"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.13 Valid Policy Mapping Test13 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest13Subpart2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "P1anyPolicyMapping1to2CACert", | 
|  | "ValidPolicyMappingTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "P1anyPolicyMapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.13"; | 
|  | info.should_validate = true; | 
|  | info.SetInitialPolicySet("NIST-test-policy-1,NIST-test-policy-2"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.13 Valid Policy Mapping Test13 (Subpart 3) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest13Subpart3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "P1anyPolicyMapping1to2CACert", | 
|  | "ValidPolicyMappingTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "P1anyPolicyMapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.13"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialPolicySet("NIST-test-policy-2"); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.10.14 Valid Policy Mapping Test14 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest14) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "P1anyPolicyMapping1to2CACert", | 
|  | "ValidPolicyMappingTest14EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "P1anyPolicyMapping1to2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.10.14"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P(PkitsTest10PolicyMappings, | 
|  | Section10ValidPolicyMappingTest1Subpart1, | 
|  | Section10ValidPolicyMappingTest1Subpart2, | 
|  | Section10ValidPolicyMappingTest1Subpart3, | 
|  | Section10InvalidPolicyMappingTest2Subpart1, | 
|  | Section10InvalidPolicyMappingTest2Subpart2, | 
|  | Section10ValidPolicyMappingTest3Subpart1, | 
|  | Section10ValidPolicyMappingTest3Subpart2, | 
|  | Section10InvalidPolicyMappingTest4, | 
|  | Section10ValidPolicyMappingTest5Subpart1, | 
|  | Section10ValidPolicyMappingTest5Subpart2, | 
|  | Section10ValidPolicyMappingTest6Subpart1, | 
|  | Section10ValidPolicyMappingTest6Subpart2, | 
|  | Section10InvalidMappingFromanyPolicyTest7, | 
|  | Section10InvalidMappingToanyPolicyTest8, | 
|  | Section10ValidPolicyMappingTest9, | 
|  | Section10InvalidPolicyMappingTest10, | 
|  | Section10ValidPolicyMappingTest11, | 
|  | Section10ValidPolicyMappingTest12Subpart1, | 
|  | Section10ValidPolicyMappingTest12Subpart2, | 
|  | Section10ValidPolicyMappingTest13Subpart1, | 
|  | Section10ValidPolicyMappingTest13Subpart2, | 
|  | Section10ValidPolicyMappingTest13Subpart3, | 
|  | Section10ValidPolicyMappingTest14); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest11InhibitPolicyMapping : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest11InhibitPolicyMapping); | 
|  |  | 
|  | // 4.11.1 Invalid inhibitPolicyMapping Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11InvalidinhibitPolicyMappingTest1) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "inhibitPolicyMapping0CACert", | 
|  | "inhibitPolicyMapping0subCACert", "InvalidinhibitPolicyMappingTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "inhibitPolicyMapping0CACRL", | 
|  | "inhibitPolicyMapping0subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.1"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.2 Valid inhibitPolicyMapping Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11ValidinhibitPolicyMappingTest2) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "inhibitPolicyMapping1P12CACert", | 
|  | "inhibitPolicyMapping1P12subCACert", "ValidinhibitPolicyMappingTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "inhibitPolicyMapping1P12CACRL", | 
|  | "inhibitPolicyMapping1P12subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.2"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.3 Invalid inhibitPolicyMapping Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11InvalidinhibitPolicyMappingTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitPolicyMapping1P12CACert", | 
|  | "inhibitPolicyMapping1P12subCACert", | 
|  | "inhibitPolicyMapping1P12subsubCACert", | 
|  | "InvalidinhibitPolicyMappingTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "inhibitPolicyMapping1P12CACRL", | 
|  | "inhibitPolicyMapping1P12subCACRL", | 
|  | "inhibitPolicyMapping1P12subsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.3"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.4 Valid inhibitPolicyMapping Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11ValidinhibitPolicyMappingTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitPolicyMapping1P12CACert", | 
|  | "inhibitPolicyMapping1P12subCACert", | 
|  | "inhibitPolicyMapping1P12subsubCACert", | 
|  | "ValidinhibitPolicyMappingTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "inhibitPolicyMapping1P12CACRL", | 
|  | "inhibitPolicyMapping1P12subCACRL", | 
|  | "inhibitPolicyMapping1P12subsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.4"; | 
|  | info.should_validate = true; | 
|  | info.SetUserConstrainedPolicySet("NIST-test-policy-2"); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.5 Invalid inhibitPolicyMapping Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11InvalidinhibitPolicyMappingTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitPolicyMapping5CACert", | 
|  | "inhibitPolicyMapping5subCACert", | 
|  | "inhibitPolicyMapping5subsubCACert", | 
|  | "inhibitPolicyMapping5subsubsubCACert", | 
|  | "InvalidinhibitPolicyMappingTest5EE"}; | 
|  | const char* const crls[] = { | 
|  | "TrustAnchorRootCRL", "inhibitPolicyMapping5CACRL", | 
|  | "inhibitPolicyMapping5subCACRL", "inhibitPolicyMapping5subsubCACRL", | 
|  | "inhibitPolicyMapping5subsubsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.5"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.6 Invalid inhibitPolicyMapping Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11InvalidinhibitPolicyMappingTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitPolicyMapping1P12CACert", | 
|  | "inhibitPolicyMapping1P12subCAIPM5Cert", | 
|  | "inhibitPolicyMapping1P12subsubCAIPM5Cert", | 
|  | "InvalidinhibitPolicyMappingTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "inhibitPolicyMapping1P12CACRL", | 
|  | "inhibitPolicyMapping1P12subCAIPM5CRL", | 
|  | "inhibitPolicyMapping1P12subsubCAIPM5CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.6"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.7 Valid Self-Issued inhibitPolicyMapping Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11ValidSelfIssuedinhibitPolicyMappingTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitPolicyMapping1P1CACert", | 
|  | "inhibitPolicyMapping1P1SelfIssuedCACert", | 
|  | "inhibitPolicyMapping1P1subCACert", | 
|  | "ValidSelfIssuedinhibitPolicyMappingTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "inhibitPolicyMapping1P1CACRL", | 
|  | "inhibitPolicyMapping1P1subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.7"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.8 Invalid Self-Issued inhibitPolicyMapping Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11InvalidSelfIssuedinhibitPolicyMappingTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitPolicyMapping1P1CACert", | 
|  | "inhibitPolicyMapping1P1SelfIssuedCACert", | 
|  | "inhibitPolicyMapping1P1subCACert", | 
|  | "inhibitPolicyMapping1P1subsubCACert", | 
|  | "InvalidSelfIssuedinhibitPolicyMappingTest8EE"}; | 
|  | const char* const crls[] = { | 
|  | "TrustAnchorRootCRL", "inhibitPolicyMapping1P1CACRL", | 
|  | "inhibitPolicyMapping1P1subCACRL", "inhibitPolicyMapping1P1subsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.8"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.9 Invalid Self-Issued inhibitPolicyMapping Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11InvalidSelfIssuedinhibitPolicyMappingTest9) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitPolicyMapping1P1CACert", | 
|  | "inhibitPolicyMapping1P1SelfIssuedCACert", | 
|  | "inhibitPolicyMapping1P1subCACert", | 
|  | "inhibitPolicyMapping1P1subsubCACert", | 
|  | "InvalidSelfIssuedinhibitPolicyMappingTest9EE"}; | 
|  | const char* const crls[] = { | 
|  | "TrustAnchorRootCRL", "inhibitPolicyMapping1P1CACRL", | 
|  | "inhibitPolicyMapping1P1subCACRL", "inhibitPolicyMapping1P1subsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.9"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.10 Invalid Self-Issued inhibitPolicyMapping Test10 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11InvalidSelfIssuedinhibitPolicyMappingTest10) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitPolicyMapping1P1CACert", | 
|  | "inhibitPolicyMapping1P1SelfIssuedCACert", | 
|  | "inhibitPolicyMapping1P1subCACert", | 
|  | "inhibitPolicyMapping1P1SelfIssuedsubCACert", | 
|  | "InvalidSelfIssuedinhibitPolicyMappingTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "inhibitPolicyMapping1P1CACRL", | 
|  | "inhibitPolicyMapping1P1subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.10"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.11.11 Invalid Self-Issued inhibitPolicyMapping Test11 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest11InhibitPolicyMapping, | 
|  | Section11InvalidSelfIssuedinhibitPolicyMappingTest11) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitPolicyMapping1P1CACert", | 
|  | "inhibitPolicyMapping1P1SelfIssuedCACert", | 
|  | "inhibitPolicyMapping1P1subCACert", | 
|  | "inhibitPolicyMapping1P1SelfIssuedsubCACert", | 
|  | "InvalidSelfIssuedinhibitPolicyMappingTest11EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "inhibitPolicyMapping1P1CACRL", | 
|  | "inhibitPolicyMapping1P1subCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.11.11"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest11InhibitPolicyMapping, | 
|  | Section11InvalidinhibitPolicyMappingTest1, | 
|  | Section11ValidinhibitPolicyMappingTest2, | 
|  | Section11InvalidinhibitPolicyMappingTest3, | 
|  | Section11ValidinhibitPolicyMappingTest4, | 
|  | Section11InvalidinhibitPolicyMappingTest5, | 
|  | Section11InvalidinhibitPolicyMappingTest6, | 
|  | Section11ValidSelfIssuedinhibitPolicyMappingTest7, | 
|  | Section11InvalidSelfIssuedinhibitPolicyMappingTest8, | 
|  | Section11InvalidSelfIssuedinhibitPolicyMappingTest9, | 
|  | Section11InvalidSelfIssuedinhibitPolicyMappingTest10, | 
|  | Section11InvalidSelfIssuedinhibitPolicyMappingTest11); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest12InhibitAnyPolicy : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest12InhibitAnyPolicy); | 
|  |  | 
|  | // 4.12.1 Invalid inhibitAnyPolicy Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12InvalidinhibitAnyPolicyTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitAnyPolicy0CACert", | 
|  | "InvalidinhibitAnyPolicyTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy0CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.1"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.2 Valid inhibitAnyPolicy Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12ValidinhibitAnyPolicyTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitAnyPolicy0CACert", | 
|  | "ValidinhibitAnyPolicyTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy0CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.2"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.3 inhibitAnyPolicy Test3 (Subpart 1) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12inhibitAnyPolicyTest3Subpart1) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "inhibitAnyPolicy1CACert", | 
|  | "inhibitAnyPolicy1subCA1Cert", "inhibitAnyPolicyTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy1CACRL", | 
|  | "inhibitAnyPolicy1subCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.3"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.3 inhibitAnyPolicy Test3 (Subpart 2) | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12inhibitAnyPolicyTest3Subpart2) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "inhibitAnyPolicy1CACert", | 
|  | "inhibitAnyPolicy1subCA1Cert", "inhibitAnyPolicyTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy1CACRL", | 
|  | "inhibitAnyPolicy1subCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.3"; | 
|  | info.should_validate = false; | 
|  | info.SetInitialInhibitAnyPolicy(true); | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.4 Invalid inhibitAnyPolicy Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12InvalidinhibitAnyPolicyTest4) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "inhibitAnyPolicy1CACert", | 
|  | "inhibitAnyPolicy1subCA1Cert", "InvalidinhibitAnyPolicyTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy1CACRL", | 
|  | "inhibitAnyPolicy1subCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.4"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.5 Invalid inhibitAnyPolicy Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12InvalidinhibitAnyPolicyTest5) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "inhibitAnyPolicy5CACert", | 
|  | "inhibitAnyPolicy5subCACert", "inhibitAnyPolicy5subsubCACert", | 
|  | "InvalidinhibitAnyPolicyTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy5CACRL", | 
|  | "inhibitAnyPolicy5subCACRL", | 
|  | "inhibitAnyPolicy5subsubCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.5"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.6 Invalid inhibitAnyPolicy Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12InvalidinhibitAnyPolicyTest6) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "inhibitAnyPolicy1CACert", | 
|  | "inhibitAnyPolicy1subCAIAP5Cert", "InvalidinhibitAnyPolicyTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy1CACRL", | 
|  | "inhibitAnyPolicy1subCAIAP5CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.6"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.7 Valid Self-Issued inhibitAnyPolicy Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12ValidSelfIssuedinhibitAnyPolicyTest7) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "inhibitAnyPolicy1CACert", | 
|  | "inhibitAnyPolicy1SelfIssuedCACert", "inhibitAnyPolicy1subCA2Cert", | 
|  | "ValidSelfIssuedinhibitAnyPolicyTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy1CACRL", | 
|  | "inhibitAnyPolicy1subCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.7"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.8 Invalid Self-Issued inhibitAnyPolicy Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12InvalidSelfIssuedinhibitAnyPolicyTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitAnyPolicy1CACert", | 
|  | "inhibitAnyPolicy1SelfIssuedCACert", | 
|  | "inhibitAnyPolicy1subCA2Cert", | 
|  | "inhibitAnyPolicy1subsubCA2Cert", | 
|  | "InvalidSelfIssuedinhibitAnyPolicyTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy1CACRL", | 
|  | "inhibitAnyPolicy1subCA2CRL", | 
|  | "inhibitAnyPolicy1subsubCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.8"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.9 Valid Self-Issued inhibitAnyPolicy Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12ValidSelfIssuedinhibitAnyPolicyTest9) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "inhibitAnyPolicy1CACert", | 
|  | "inhibitAnyPolicy1SelfIssuedCACert", | 
|  | "inhibitAnyPolicy1subCA2Cert", | 
|  | "inhibitAnyPolicy1SelfIssuedsubCA2Cert", | 
|  | "ValidSelfIssuedinhibitAnyPolicyTest9EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy1CACRL", | 
|  | "inhibitAnyPolicy1subCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.9"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.12.10 Invalid Self-Issued inhibitAnyPolicy Test10 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest12InhibitAnyPolicy, | 
|  | Section12InvalidSelfIssuedinhibitAnyPolicyTest10) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "inhibitAnyPolicy1CACert", | 
|  | "inhibitAnyPolicy1SelfIssuedCACert", "inhibitAnyPolicy1subCA2Cert", | 
|  | "InvalidSelfIssuedinhibitAnyPolicyTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "inhibitAnyPolicy1CACRL", | 
|  | "inhibitAnyPolicy1subCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.12.10"; | 
|  | info.should_validate = false; | 
|  | info.SetUserConstrainedPolicySet(""); | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest12InhibitAnyPolicy, | 
|  | Section12InvalidinhibitAnyPolicyTest1, | 
|  | Section12ValidinhibitAnyPolicyTest2, | 
|  | Section12inhibitAnyPolicyTest3Subpart1, | 
|  | Section12inhibitAnyPolicyTest3Subpart2, | 
|  | Section12InvalidinhibitAnyPolicyTest4, | 
|  | Section12InvalidinhibitAnyPolicyTest5, | 
|  | Section12InvalidinhibitAnyPolicyTest6, | 
|  | Section12ValidSelfIssuedinhibitAnyPolicyTest7, | 
|  | Section12InvalidSelfIssuedinhibitAnyPolicyTest8, | 
|  | Section12ValidSelfIssuedinhibitAnyPolicyTest9, | 
|  | Section12InvalidSelfIssuedinhibitAnyPolicyTest10); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest13NameConstraints : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest13NameConstraints); | 
|  |  | 
|  | // 4.13.1 Valid DN nameConstraints Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNnameConstraintsTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN1CACert", | 
|  | "ValidDNnameConstraintsTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.1"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.2 Invalid DN nameConstraints Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN1CACert", | 
|  | "InvalidDNnameConstraintsTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.3 Invalid DN nameConstraints Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN1CACert", | 
|  | "InvalidDNnameConstraintsTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.3"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.4 Valid DN nameConstraints Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNnameConstraintsTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN1CACert", | 
|  | "ValidDNnameConstraintsTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.4"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.5 Valid DN nameConstraints Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNnameConstraintsTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN2CACert", | 
|  | "ValidDNnameConstraintsTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.5"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.6 Valid DN nameConstraints Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNnameConstraintsTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN3CACert", | 
|  | "ValidDNnameConstraintsTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN3CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.6"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.7 Invalid DN nameConstraints Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN3CACert", | 
|  | "InvalidDNnameConstraintsTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN3CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.7"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.8 Invalid DN nameConstraints Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN4CACert", | 
|  | "InvalidDNnameConstraintsTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN4CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.8"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.9 Invalid DN nameConstraints Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest9) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN4CACert", | 
|  | "InvalidDNnameConstraintsTest9EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN4CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.9"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.10 Invalid DN nameConstraints Test10 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest10) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN5CACert", | 
|  | "InvalidDNnameConstraintsTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN5CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.10"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.11 Valid DN nameConstraints Test11 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNnameConstraintsTest11) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN5CACert", | 
|  | "ValidDNnameConstraintsTest11EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN5CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.11"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.12 Invalid DN nameConstraints Test12 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest12) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "nameConstraintsDN1CACert", | 
|  | "nameConstraintsDN1subCA1Cert", "InvalidDNnameConstraintsTest12EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL", | 
|  | "nameConstraintsDN1subCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.12"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.13 Invalid DN nameConstraints Test13 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest13) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "nameConstraintsDN1CACert", | 
|  | "nameConstraintsDN1subCA2Cert", "InvalidDNnameConstraintsTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL", | 
|  | "nameConstraintsDN1subCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.13"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.14 Valid DN nameConstraints Test14 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNnameConstraintsTest14) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "nameConstraintsDN1CACert", | 
|  | "nameConstraintsDN1subCA2Cert", "ValidDNnameConstraintsTest14EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL", | 
|  | "nameConstraintsDN1subCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.14"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.15 Invalid DN nameConstraints Test15 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest15) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "nameConstraintsDN3CACert", | 
|  | "nameConstraintsDN3subCA1Cert", "InvalidDNnameConstraintsTest15EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN3CACRL", | 
|  | "nameConstraintsDN3subCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.15"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.16 Invalid DN nameConstraints Test16 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest16) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "nameConstraintsDN3CACert", | 
|  | "nameConstraintsDN3subCA1Cert", "InvalidDNnameConstraintsTest16EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN3CACRL", | 
|  | "nameConstraintsDN3subCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.16"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.17 Invalid DN nameConstraints Test17 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNnameConstraintsTest17) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "nameConstraintsDN3CACert", | 
|  | "nameConstraintsDN3subCA2Cert", "InvalidDNnameConstraintsTest17EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN3CACRL", | 
|  | "nameConstraintsDN3subCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.17"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.18 Valid DN nameConstraints Test18 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNnameConstraintsTest18) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "nameConstraintsDN3CACert", | 
|  | "nameConstraintsDN3subCA2Cert", "ValidDNnameConstraintsTest18EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN3CACRL", | 
|  | "nameConstraintsDN3subCA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.18"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.19 Valid Self-Issued DN nameConstraints Test19 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidSelfIssuedDNnameConstraintsTest19) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "nameConstraintsDN1CACert", | 
|  | "nameConstraintsDN1SelfIssuedCACert", "ValidDNnameConstraintsTest19EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.19"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.20 Invalid Self-Issued DN nameConstraints Test20 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidSelfIssuedDNnameConstraintsTest20) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN1CACert", | 
|  | "InvalidDNnameConstraintsTest20EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.20"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.21 Valid RFC822 nameConstraints Test21 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidRFC822nameConstraintsTest21) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsRFC822CA1Cert", | 
|  | "ValidRFC822nameConstraintsTest21EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "nameConstraintsRFC822CA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.21"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.22 Invalid RFC822 nameConstraints Test22 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidRFC822nameConstraintsTest22) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsRFC822CA1Cert", | 
|  | "InvalidRFC822nameConstraintsTest22EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "nameConstraintsRFC822CA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.22"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.23 Valid RFC822 nameConstraints Test23 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidRFC822nameConstraintsTest23) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsRFC822CA2Cert", | 
|  | "ValidRFC822nameConstraintsTest23EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "nameConstraintsRFC822CA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.23"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.24 Invalid RFC822 nameConstraints Test24 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidRFC822nameConstraintsTest24) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsRFC822CA2Cert", | 
|  | "InvalidRFC822nameConstraintsTest24EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "nameConstraintsRFC822CA2CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.24"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.25 Valid RFC822 nameConstraints Test25 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidRFC822nameConstraintsTest25) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsRFC822CA3Cert", | 
|  | "ValidRFC822nameConstraintsTest25EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "nameConstraintsRFC822CA3CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.25"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.26 Invalid RFC822 nameConstraints Test26 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidRFC822nameConstraintsTest26) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsRFC822CA3Cert", | 
|  | "InvalidRFC822nameConstraintsTest26EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "nameConstraintsRFC822CA3CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.26"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.27 Valid DN and RFC822 nameConstraints Test27 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNandRFC822nameConstraintsTest27) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN1CACert", | 
|  | "nameConstraintsDN1subCA3Cert", | 
|  | "ValidDNandRFC822nameConstraintsTest27EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL", | 
|  | "nameConstraintsDN1subCA3CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.27"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.28 Invalid DN and RFC822 nameConstraints Test28 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNandRFC822nameConstraintsTest28) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN1CACert", | 
|  | "nameConstraintsDN1subCA3Cert", | 
|  | "InvalidDNandRFC822nameConstraintsTest28EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL", | 
|  | "nameConstraintsDN1subCA3CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.28"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.29 Invalid DN and RFC822 nameConstraints Test29 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNandRFC822nameConstraintsTest29) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDN1CACert", | 
|  | "nameConstraintsDN1subCA3Cert", | 
|  | "InvalidDNandRFC822nameConstraintsTest29EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDN1CACRL", | 
|  | "nameConstraintsDN1subCA3CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.29"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.30 Valid DNS nameConstraints Test30 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNSnameConstraintsTest30) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDNS1CACert", | 
|  | "ValidDNSnameConstraintsTest30EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDNS1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.30"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.31 Invalid DNS nameConstraints Test31 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNSnameConstraintsTest31) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDNS1CACert", | 
|  | "InvalidDNSnameConstraintsTest31EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDNS1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.31"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.32 Valid DNS nameConstraints Test32 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidDNSnameConstraintsTest32) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDNS2CACert", | 
|  | "ValidDNSnameConstraintsTest32EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDNS2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.32"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.33 Invalid DNS nameConstraints Test33 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNSnameConstraintsTest33) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDNS2CACert", | 
|  | "InvalidDNSnameConstraintsTest33EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDNS2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.33"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.34 Valid URI nameConstraints Test34 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidURInameConstraintsTest34) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsURI1CACert", | 
|  | "ValidURInameConstraintsTest34EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsURI1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.34"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.35 Invalid URI nameConstraints Test35 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidURInameConstraintsTest35) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsURI1CACert", | 
|  | "InvalidURInameConstraintsTest35EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsURI1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.35"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.36 Valid URI nameConstraints Test36 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13ValidURInameConstraintsTest36) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsURI2CACert", | 
|  | "ValidURInameConstraintsTest36EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsURI2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.36"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.37 Invalid URI nameConstraints Test37 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidURInameConstraintsTest37) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsURI2CACert", | 
|  | "InvalidURInameConstraintsTest37EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsURI2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.37"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.13.38 Invalid DNS nameConstraints Test38 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest13NameConstraints, | 
|  | Section13InvalidDNSnameConstraintsTest38) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "nameConstraintsDNS1CACert", | 
|  | "InvalidDNSnameConstraintsTest38EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "nameConstraintsDNS1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.13.38"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest13NameConstraints, | 
|  | Section13ValidDNnameConstraintsTest1, | 
|  | Section13InvalidDNnameConstraintsTest2, | 
|  | Section13InvalidDNnameConstraintsTest3, | 
|  | Section13ValidDNnameConstraintsTest4, | 
|  | Section13ValidDNnameConstraintsTest5, | 
|  | Section13ValidDNnameConstraintsTest6, | 
|  | Section13InvalidDNnameConstraintsTest7, | 
|  | Section13InvalidDNnameConstraintsTest8, | 
|  | Section13InvalidDNnameConstraintsTest9, | 
|  | Section13InvalidDNnameConstraintsTest10, | 
|  | Section13ValidDNnameConstraintsTest11, | 
|  | Section13InvalidDNnameConstraintsTest12, | 
|  | Section13InvalidDNnameConstraintsTest13, | 
|  | Section13ValidDNnameConstraintsTest14, | 
|  | Section13InvalidDNnameConstraintsTest15, | 
|  | Section13InvalidDNnameConstraintsTest16, | 
|  | Section13InvalidDNnameConstraintsTest17, | 
|  | Section13ValidDNnameConstraintsTest18, | 
|  | Section13ValidSelfIssuedDNnameConstraintsTest19, | 
|  | Section13InvalidSelfIssuedDNnameConstraintsTest20, | 
|  | Section13ValidRFC822nameConstraintsTest21, | 
|  | Section13InvalidRFC822nameConstraintsTest22, | 
|  | Section13ValidRFC822nameConstraintsTest23, | 
|  | Section13InvalidRFC822nameConstraintsTest24, | 
|  | Section13ValidRFC822nameConstraintsTest25, | 
|  | Section13InvalidRFC822nameConstraintsTest26, | 
|  | Section13ValidDNandRFC822nameConstraintsTest27, | 
|  | Section13InvalidDNandRFC822nameConstraintsTest28, | 
|  | Section13InvalidDNandRFC822nameConstraintsTest29, | 
|  | Section13ValidDNSnameConstraintsTest30, | 
|  | Section13InvalidDNSnameConstraintsTest31, | 
|  | Section13ValidDNSnameConstraintsTest32, | 
|  | Section13InvalidDNSnameConstraintsTest33, | 
|  | Section13ValidURInameConstraintsTest34, | 
|  | Section13InvalidURInameConstraintsTest35, | 
|  | Section13ValidURInameConstraintsTest36, | 
|  | Section13InvalidURInameConstraintsTest37, | 
|  | Section13InvalidDNSnameConstraintsTest38); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest14DistributionPoints : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest14DistributionPoints); | 
|  |  | 
|  | // 4.14.1 Valid distributionPoint Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValiddistributionPointTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "distributionPoint1CACert", | 
|  | "ValiddistributionPointTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "distributionPoint1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.1"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.2 Invalid distributionPoint Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvaliddistributionPointTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "distributionPoint1CACert", | 
|  | "InvaliddistributionPointTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "distributionPoint1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.3 Invalid distributionPoint Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvaliddistributionPointTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "distributionPoint1CACert", | 
|  | "InvaliddistributionPointTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "distributionPoint1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.3"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.4 Valid distributionPoint Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValiddistributionPointTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "distributionPoint1CACert", | 
|  | "ValiddistributionPointTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "distributionPoint1CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.4"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.5 Valid distributionPoint Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValiddistributionPointTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "distributionPoint2CACert", | 
|  | "ValiddistributionPointTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "distributionPoint2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.5"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.6 Invalid distributionPoint Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvaliddistributionPointTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "distributionPoint2CACert", | 
|  | "InvaliddistributionPointTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "distributionPoint2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.6"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.7 Valid distributionPoint Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValiddistributionPointTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "distributionPoint2CACert", | 
|  | "ValiddistributionPointTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "distributionPoint2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.7"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.8 Invalid distributionPoint Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvaliddistributionPointTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "distributionPoint2CACert", | 
|  | "InvaliddistributionPointTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "distributionPoint2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.8"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.9 Invalid distributionPoint Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvaliddistributionPointTest9) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "distributionPoint2CACert", | 
|  | "InvaliddistributionPointTest9EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "distributionPoint2CACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.9"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.10 Valid No issuingDistributionPoint Test10 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidNoissuingDistributionPointTest10) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "NoissuingDistributionPointCACert", | 
|  | "ValidNoissuingDistributionPointTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "NoissuingDistributionPointCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.10"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.11 Invalid onlyContainsUserCerts CRL Test11 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidonlyContainsUserCertsCRLTest11) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlyContainsUserCertsCACert", | 
|  | "InvalidonlyContainsUserCertsTest11EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "onlyContainsUserCertsCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.11"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.12 Invalid onlyContainsCACerts CRL Test12 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidonlyContainsCACertsCRLTest12) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlyContainsCACertsCACert", | 
|  | "InvalidonlyContainsCACertsTest12EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "onlyContainsCACertsCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.12"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.13 Valid onlyContainsCACerts CRL Test13 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidonlyContainsCACertsCRLTest13) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlyContainsCACertsCACert", | 
|  | "ValidonlyContainsCACertsTest13EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "onlyContainsCACertsCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.13"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.14 Invalid onlyContainsAttributeCerts Test14 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidonlyContainsAttributeCertsTest14) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlyContainsAttributeCertsCACert", | 
|  | "InvalidonlyContainsAttributeCertsTest14EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "onlyContainsAttributeCertsCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.14"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.15 Invalid onlySomeReasons Test15 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidonlySomeReasonsTest15) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlySomeReasonsCA1Cert", | 
|  | "InvalidonlySomeReasonsTest15EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "onlySomeReasonsCA1compromiseCRL", | 
|  | "onlySomeReasonsCA1otherreasonsCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.15"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.16 Invalid onlySomeReasons Test16 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidonlySomeReasonsTest16) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlySomeReasonsCA1Cert", | 
|  | "InvalidonlySomeReasonsTest16EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "onlySomeReasonsCA1compromiseCRL", | 
|  | "onlySomeReasonsCA1otherreasonsCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.16"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.17 Invalid onlySomeReasons Test17 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidonlySomeReasonsTest17) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlySomeReasonsCA2Cert", | 
|  | "InvalidonlySomeReasonsTest17EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "onlySomeReasonsCA2CRL1", | 
|  | "onlySomeReasonsCA2CRL2"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.17"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.18 Valid onlySomeReasons Test18 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidonlySomeReasonsTest18) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlySomeReasonsCA3Cert", | 
|  | "ValidonlySomeReasonsTest18EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "onlySomeReasonsCA3compromiseCRL", | 
|  | "onlySomeReasonsCA3otherreasonsCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.18"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.19 Valid onlySomeReasons Test19 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidonlySomeReasonsTest19) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlySomeReasonsCA4Cert", | 
|  | "ValidonlySomeReasonsTest19EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "onlySomeReasonsCA4compromiseCRL", | 
|  | "onlySomeReasonsCA4otherreasonsCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.19"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.20 Invalid onlySomeReasons Test20 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidonlySomeReasonsTest20) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlySomeReasonsCA4Cert", | 
|  | "InvalidonlySomeReasonsTest20EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "onlySomeReasonsCA4compromiseCRL", | 
|  | "onlySomeReasonsCA4otherreasonsCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.20"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.21 Invalid onlySomeReasons Test21 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidonlySomeReasonsTest21) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "onlySomeReasonsCA4Cert", | 
|  | "InvalidonlySomeReasonsTest21EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "onlySomeReasonsCA4compromiseCRL", | 
|  | "onlySomeReasonsCA4otherreasonsCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.21"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.22 Valid IDP with indirectCRL Test22 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidIDPwithindirectCRLTest22) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA1Cert", | 
|  | "ValidIDPwithindirectCRLTest22EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.22"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.23 Invalid IDP with indirectCRL Test23 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidIDPwithindirectCRLTest23) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA1Cert", | 
|  | "InvalidIDPwithindirectCRLTest23EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.23"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.24 Valid IDP with indirectCRL Test24 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidIDPwithindirectCRLTest24) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA2Cert", "indirectCRLCA1Cert", | 
|  | "ValidIDPwithindirectCRLTest24EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.24"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.25 Valid IDP with indirectCRL Test25 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidIDPwithindirectCRLTest25) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA2Cert", "indirectCRLCA1Cert", | 
|  | "ValidIDPwithindirectCRLTest25EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.25"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.26 Invalid IDP with indirectCRL Test26 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidIDPwithindirectCRLTest26) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA2Cert", "indirectCRLCA1Cert", | 
|  | "InvalidIDPwithindirectCRLTest26EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA1CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.26"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.27 Invalid cRLIssuer Test27 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidcRLIssuerTest27) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA2Cert", "GoodCACert", | 
|  | "InvalidcRLIssuerTest27EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "GoodCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.27"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.28 Valid cRLIssuer Test28 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidcRLIssuerTest28) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "indirectCRLCA3Cert", | 
|  | "indirectCRLCA3cRLIssuerCert", "ValidcRLIssuerTest28EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA3CRL", | 
|  | "indirectCRLCA3cRLIssuerCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.28"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.29 Valid cRLIssuer Test29 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidcRLIssuerTest29) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "indirectCRLCA3Cert", | 
|  | "indirectCRLCA3cRLIssuerCert", "ValidcRLIssuerTest29EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA3CRL", | 
|  | "indirectCRLCA3cRLIssuerCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.29"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.30 Valid cRLIssuer Test30 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidcRLIssuerTest30) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", "indirectCRLCA4Cert", | 
|  | "indirectCRLCA4cRLIssuerCert", "ValidcRLIssuerTest30EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "indirectCRLCA4cRLIssuerCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.30"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.31 Invalid cRLIssuer Test31 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidcRLIssuerTest31) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA5Cert", "indirectCRLCA6Cert", | 
|  | "InvalidcRLIssuerTest31EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA5CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.31"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.32 Invalid cRLIssuer Test32 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidcRLIssuerTest32) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA5Cert", "indirectCRLCA6Cert", | 
|  | "InvalidcRLIssuerTest32EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA5CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.32"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.33 Valid cRLIssuer Test33 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14ValidcRLIssuerTest33) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA5Cert", "indirectCRLCA6Cert", | 
|  | "ValidcRLIssuerTest33EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA5CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.33"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.34 Invalid cRLIssuer Test34 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidcRLIssuerTest34) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA5Cert", | 
|  | "InvalidcRLIssuerTest34EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA5CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.34"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.14.35 Invalid cRLIssuer Test35 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest14DistributionPoints, | 
|  | Section14InvalidcRLIssuerTest35) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "indirectCRLCA5Cert", | 
|  | "InvalidcRLIssuerTest35EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "indirectCRLCA5CRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.14.35"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest14DistributionPoints, | 
|  | Section14ValiddistributionPointTest1, | 
|  | Section14InvaliddistributionPointTest2, | 
|  | Section14InvaliddistributionPointTest3, | 
|  | Section14ValiddistributionPointTest4, | 
|  | Section14ValiddistributionPointTest5, | 
|  | Section14InvaliddistributionPointTest6, | 
|  | Section14ValiddistributionPointTest7, | 
|  | Section14InvaliddistributionPointTest8, | 
|  | Section14InvaliddistributionPointTest9, | 
|  | Section14ValidNoissuingDistributionPointTest10, | 
|  | Section14InvalidonlyContainsUserCertsCRLTest11, | 
|  | Section14InvalidonlyContainsCACertsCRLTest12, | 
|  | Section14ValidonlyContainsCACertsCRLTest13, | 
|  | Section14InvalidonlyContainsAttributeCertsTest14, | 
|  | Section14InvalidonlySomeReasonsTest15, | 
|  | Section14InvalidonlySomeReasonsTest16, | 
|  | Section14InvalidonlySomeReasonsTest17, | 
|  | Section14ValidonlySomeReasonsTest18, | 
|  | Section14ValidonlySomeReasonsTest19, | 
|  | Section14InvalidonlySomeReasonsTest20, | 
|  | Section14InvalidonlySomeReasonsTest21, | 
|  | Section14ValidIDPwithindirectCRLTest22, | 
|  | Section14InvalidIDPwithindirectCRLTest23, | 
|  | Section14ValidIDPwithindirectCRLTest24, | 
|  | Section14ValidIDPwithindirectCRLTest25, | 
|  | Section14InvalidIDPwithindirectCRLTest26, | 
|  | Section14InvalidcRLIssuerTest27, | 
|  | Section14ValidcRLIssuerTest28, | 
|  | Section14ValidcRLIssuerTest29, | 
|  | Section14ValidcRLIssuerTest30, | 
|  | Section14InvalidcRLIssuerTest31, | 
|  | Section14InvalidcRLIssuerTest32, | 
|  | Section14ValidcRLIssuerTest33, | 
|  | Section14InvalidcRLIssuerTest34, | 
|  | Section14InvalidcRLIssuerTest35); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest15DeltaCRLs : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest15DeltaCRLs); | 
|  |  | 
|  | // 4.15.1 Invalid deltaCRLIndicator No Base Test1 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, | 
|  | Section15InvaliddeltaCRLIndicatorNoBaseTest1) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", | 
|  | "deltaCRLIndicatorNoBaseCACert", | 
|  | "InvaliddeltaCRLIndicatorNoBaseTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", | 
|  | "deltaCRLIndicatorNoBaseCACRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.1"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.15.2 Valid delta-CRL Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, Section15ValiddeltaCRLTest2) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "deltaCRLCA1Cert", | 
|  | "ValiddeltaCRLTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "deltaCRLCA1CRL", | 
|  | "deltaCRLCA1deltaCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.2"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.15.3 Invalid delta-CRL Test3 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, Section15InvaliddeltaCRLTest3) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "deltaCRLCA1Cert", | 
|  | "InvaliddeltaCRLTest3EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "deltaCRLCA1CRL", | 
|  | "deltaCRLCA1deltaCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.3"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.15.4 Invalid delta-CRL Test4 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, Section15InvaliddeltaCRLTest4) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "deltaCRLCA1Cert", | 
|  | "InvaliddeltaCRLTest4EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "deltaCRLCA1CRL", | 
|  | "deltaCRLCA1deltaCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.4"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.15.5 Valid delta-CRL Test5 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, Section15ValiddeltaCRLTest5) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "deltaCRLCA1Cert", | 
|  | "ValiddeltaCRLTest5EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "deltaCRLCA1CRL", | 
|  | "deltaCRLCA1deltaCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.5"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.15.6 Invalid delta-CRL Test6 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, Section15InvaliddeltaCRLTest6) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "deltaCRLCA1Cert", | 
|  | "InvaliddeltaCRLTest6EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "deltaCRLCA1CRL", | 
|  | "deltaCRLCA1deltaCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.6"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.15.7 Valid delta-CRL Test7 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, Section15ValiddeltaCRLTest7) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "deltaCRLCA1Cert", | 
|  | "ValiddeltaCRLTest7EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "deltaCRLCA1CRL", | 
|  | "deltaCRLCA1deltaCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.7"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.15.8 Valid delta-CRL Test8 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, Section15ValiddeltaCRLTest8) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "deltaCRLCA2Cert", | 
|  | "ValiddeltaCRLTest8EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "deltaCRLCA2CRL", | 
|  | "deltaCRLCA2deltaCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.8"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.15.9 Invalid delta-CRL Test9 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, Section15InvaliddeltaCRLTest9) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "deltaCRLCA2Cert", | 
|  | "InvaliddeltaCRLTest9EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "deltaCRLCA2CRL", | 
|  | "deltaCRLCA2deltaCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.9"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.15.10 Invalid delta-CRL Test10 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest15DeltaCRLs, Section15InvaliddeltaCRLTest10) { | 
|  | const char* const certs[] = {"TrustAnchorRootCertificate", "deltaCRLCA3Cert", | 
|  | "InvaliddeltaCRLTest10EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL", "deltaCRLCA3CRL", | 
|  | "deltaCRLCA3deltaCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.15.10"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest15DeltaCRLs, | 
|  | Section15InvaliddeltaCRLIndicatorNoBaseTest1, | 
|  | Section15ValiddeltaCRLTest2, | 
|  | Section15InvaliddeltaCRLTest3, | 
|  | Section15InvaliddeltaCRLTest4, | 
|  | Section15ValiddeltaCRLTest5, | 
|  | Section15InvaliddeltaCRLTest6, | 
|  | Section15ValiddeltaCRLTest7, | 
|  | Section15ValiddeltaCRLTest8, | 
|  | Section15InvaliddeltaCRLTest9, | 
|  | Section15InvaliddeltaCRLTest10); | 
|  |  | 
|  | template <typename PkitsTestDelegate> | 
|  | class PkitsTest16PrivateCertificateExtensions | 
|  | : public PkitsTest<PkitsTestDelegate> {}; | 
|  | TYPED_TEST_SUITE_P(PkitsTest16PrivateCertificateExtensions); | 
|  |  | 
|  | // 4.16.1 Valid Unknown Not Critical Certificate Extension Test1 | 
|  | WRAPPED_TYPED_TEST_P( | 
|  | PkitsTest16PrivateCertificateExtensions, | 
|  | Section16ValidUnknownNotCriticalCertificateExtensionTest1) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", | 
|  | "ValidUnknownNotCriticalCertificateExtensionTest1EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.16.1"; | 
|  | info.should_validate = true; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | // 4.16.2 Invalid Unknown Critical Certificate Extension Test2 | 
|  | WRAPPED_TYPED_TEST_P(PkitsTest16PrivateCertificateExtensions, | 
|  | Section16InvalidUnknownCriticalCertificateExtensionTest2) { | 
|  | const char* const certs[] = { | 
|  | "TrustAnchorRootCertificate", | 
|  | "InvalidUnknownCriticalCertificateExtensionTest2EE"}; | 
|  | const char* const crls[] = {"TrustAnchorRootCRL"}; | 
|  | PkitsTestInfo info; | 
|  | info.test_number = "4.16.2"; | 
|  | info.should_validate = false; | 
|  |  | 
|  | this->RunTest(certs, crls, info); | 
|  | } | 
|  |  | 
|  | WRAPPED_REGISTER_TYPED_TEST_SUITE_P( | 
|  | PkitsTest16PrivateCertificateExtensions, | 
|  | Section16ValidUnknownNotCriticalCertificateExtensionTest1, | 
|  | Section16InvalidUnknownCriticalCertificateExtensionTest2); |