Skip to content

Commit 58be579

Browse files
committed
ocsp tests
1 parent 7926254 commit 58be579

4 files changed

Lines changed: 82 additions & 2 deletions

File tree

tests/AdvancedCMS/MainTest.php

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,21 @@ public function getOCSPRequest()
4848
return file_get_contents(__DIR__ . '/../fixtures/OCSPRequest.pem');
4949
}
5050

51-
public function OCSPRequestWithSignature()
51+
public function getOCSPRequestWithSignature()
5252
{
5353
return file_get_contents(__DIR__ . '/../fixtures/OCSPRequestWithSignature.pem');
5454
}
5555

56+
public function getRevokedCertificate()
57+
{
58+
return file_get_contents(__DIR__ . '/../fixtures/revokedCertificate.pem');
59+
}
60+
61+
public function getDoubleOCSPRequest()
62+
{
63+
return file_get_contents(__DIR__ . '/../fixtures/DoubleOCSPRequest.pem');
64+
}
65+
5666
protected function curlRequest(string $url, string $binaryContent, string $requestContentType, string $responseContentType)
5767
{
5868
$curl = curl_init();

tests/AdvancedCMS/OCSPRequestTest.php

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,38 @@
1616

1717
class OCSPRequestTest extends MainTest
1818
{
19+
public function testDouble()
20+
{
21+
$OCSPRequest = OCSPRequest::createFromContent($this->getDoubleOCSPRequest());
22+
$requestList = $OCSPRequest->getTBSRequest()->getRequestList();
23+
24+
self::assertIsIterable($requestList);
25+
self::assertCount(2, $requestList);
26+
}
27+
28+
public function testRevoked()
29+
{
30+
$certificate = Certificate::createFromContent($this->getRevokedCertificate());
31+
$intermediateCertificate = Certificate::createFromContent($this->getIntermediateCertificate());
32+
$OCSPRequest = OCSPRequest::createSimple($certificate, $intermediateCertificate, Algorithm::OID_SHA256);
33+
34+
foreach ($certificate->getOcspUris() as $url) {
35+
$result = $this->curlRequest($url, $OCSPRequest->getBinary(), OCSPRequest::CONTENT_TYPE, OCSPResponse::CONTENT_TYPE);
36+
37+
if (!is_null($result)) {
38+
$OCSPResponse = OCSPResponse::createFromContent($result);
39+
self::assertInstanceOf(OCSPResponse::class, $OCSPResponse);
40+
41+
$responses = $OCSPResponse->getBasicOCSPResponse()->getTbsResponseData()->getResponses();
42+
foreach ($responses as $response) {
43+
self::assertTrue($response->getCertStatus()->isRevoked());
44+
}
45+
46+
break;
47+
}
48+
}
49+
}
50+
1951
public function testSimple()
2052
{
2153
$signedData = SignedData::createFromContent($this->getFullCMS());
@@ -46,7 +78,7 @@ public function testSimple()
4678

4779
public function testWithSignature()
4880
{
49-
$OCSPRequest = OCSPRequest::createFromContent($this->OCSPRequestWithSignature());
81+
$OCSPRequest = OCSPRequest::createFromContent($this->getOCSPRequestWithSignature());
5082

5183
$optionalSignature = $OCSPRequest->getOptionalSignature();
5284

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
MIIBBjCCAQIwgdowazBpMA0GCWCGSAFlAwQCAQUABCBv/tbEehijYyEUXBbteEiK7lPBCjYU56FYSrGBOu940gQgUBwm7z9f/+3WmAX3JB734Cy97Ptuf/w3qsvBbHHvV88CFDT3MRK0TLJZ9+5u0HgLpEfpEmJ0MGswaTANBglghkgBZQMEAgEFAAQgb/7WxHoYo2MhFFwW7XhIiu5TwQo2FOehWEqxgTrveNIEIFAcJu8/X//t1pgF9yQe9+Asvez7bn/8N6rLwWxx71fPAhQRyRBkRFOsgJrRSdJveJXNQsi6XaIjMCEwHwYJKwYBBQUHMAECBBIEEG7zEPwe6uJqZKaxFvkZy54=
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIGaTCCBFGgAwIBAgIUNPcxErRMsln37m7QeAukR+kSYnQwDQYJKoZIhvcNAQEL
3+
BQAwUjELMAkGA1UEBhMCS1oxQzBBBgNVBAMMOtKw0JvQotCi0KvSmiDQmtCj05jQ
4+
m9CQ0J3QlNCr0KDQo9Co0Ksg0J7QoNCi0JDQm9Cr0pogKFJTQSkwHhcNMjAwODEy
5+
MTEwODU0WhcNMjEwODEyMTEwODU0WjCBqzEkMCIGA1UEAwwb0JzQntCY0KHQldCV
6+
0JIg0JDQndCU0KDQldCZMRcwFQYDVQQEDA7QnNCe0JjQodCV0JXQkjEYMBYGA1UE
7+
BRMPSUlONzkwOTAxMzAxMjE3MQswCQYDVQQGEwJLWjEdMBsGA1UEKgwU0J3QmNCa
8+
0J7Qm9CQ0JXQktCY0KcxJDAiBgkqhkiG9w0BCQEWFUFORFJFU09OMTIzQEdNQUlM
9+
LkNPTTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJCqwjqlMX3JTtyB
10+
wT40QEYk5S7A3JgtP+2ObI6q69WNxO+9tdcVqKe2JynrN0WllveeIXZbu1eOFlZN
11+
BS+0irl7yDBUmF0+M8jdjK8gwOQh2cWO1Y6iVIMcEKSX8K8EUFsh0O5h7UjovFlo
12+
6yR/QaKlRsj8/l/wgj20WYvHG4GvoJCX/w1LhTe0Rx1Cxe4JEdnEiBil1tyGVYi4
13+
TuR68Cwc1/URIIP5pR5ECojqAK/jijwYDFvW62cBoKLJSaI4AgoCUhYrreYRJ/ny
14+
t0jIBDZGWitG4cJsLJ3jOiS1eCeqJBIfQo713WSAsAn/3xIY/8Rt5OchuLz0RTZa
15+
oBK+IC0CAwEAAaOCAdswggHXMA4GA1UdDwEB/wQEAwIGwDAdBgNVHSUEFjAUBggr
16+
BgEFBQcDBAYIKoMOAwMEAQEwDwYDVR0jBAgwBoAEW2p0ETAdBgNVHQ4EFgQUDyVX
17+
H68zhkArYR7kvSQY8M0AQUMwXgYDVR0gBFcwVTBTBgcqgw4DAwIDMEgwIQYIKwYB
18+
BQUHAgEWFWh0dHA6Ly9wa2kuZ292Lmt6L2NwczAjBggrBgEFBQcCAjAXDBVodHRw
19+
Oi8vcGtpLmdvdi5rei9jcHMwVgYDVR0fBE8wTTBLoEmgR4YhaHR0cDovL2NybC5w
20+
a2kuZ292Lmt6L25jYV9yc2EuY3JshiJodHRwOi8vY3JsMS5wa2kuZ292Lmt6L25j
21+
YV9yc2EuY3JsMFoGA1UdLgRTMFEwT6BNoEuGI2h0dHA6Ly9jcmwucGtpLmdvdi5r
22+
ei9uY2FfZF9yc2EuY3JshiRodHRwOi8vY3JsMS5wa2kuZ292Lmt6L25jYV9kX3Jz
23+
YS5jcmwwYgYIKwYBBQUHAQEEVjBUMC4GCCsGAQUFBzAChiJodHRwOi8vcGtpLmdv
24+
di5rei9jZXJ0L25jYV9yc2EuY2VyMCIGCCsGAQUFBzABhhZodHRwOi8vb2NzcC5w
25+
a2kuZ292Lmt6MA0GCSqGSIb3DQEBCwUAA4ICAQCS0BZ8AAi6WBCPzjeEJNK21XtD
26+
WJsU0qGXiKyJYRKLbRI1LFA7FqF6Eb3/LsMLggG/aPs54l4ZRoMjQPEfYdpYwbgc
27+
TvaryRpv0nR5Rxh9omBlAyRunxGEhaSYsRiO6A/u1Q20QtQal1Gkr1Iyygbssyhu
28+
wIglhcx8REF7cl6wqOCWpH9KRsv1FmiqTL2DPXVav8HnGSitSVlQCCn5B+0+9GfM
29+
EPA5w68mBp0wxyIexbJUA0+dtZ4qwx+oOW54qVt/Oden6YwzZq5bQySBqvoXeCzR
30+
3cgCOsyq/Guld6FXb+Yl2Ax9xGUftx2LGnfGFOCB5bSw8pG8oHP4zm7ZGRtz2Oh6
31+
AWwunmBN6qHb4Cceesb+LYlxFim6KZLHcuAzgp44xm8BPLkIEmMNVaKVvwSFFCxj
32+
D1DP2bfSTuG0l1flg9aUARcaH3XC5G6JsvLylytLL8/TdDoJd0ChMreaIiMDs+6j
33+
ruFk5G5N1wv4XC7Z6210IUMhtltljTebmnUGzOHdtUTxiW2vNwvaf0OljMWpWAhP
34+
0aXOjmtGU2TVARFeXIZ9270G4kBsqSqrericq9G/skxnoMeLxW0P8Sfotsmgk5+r
35+
vumx9dtBSuHb0sVo5XcFOOAadpY9sIgBzrTwc8tQOHKkdDhLC0M+y3nnuTZzuoju
36+
tO6tmQnlFlqpyIZE4A==
37+
-----END CERTIFICATE-----

0 commit comments

Comments
 (0)