66
77use DOMDocument ;
88use PHPUnit \Framework \TestCase ;
9+ use SimpleSAML \Test \XML \SerializableXMLTestTrait ;
910use SimpleSAML \XML \DOMDocumentFactory ;
1011use SimpleSAML \XMLSecurity \Constants ;
1112use SimpleSAML \XMLSecurity \Key ;
2223 */
2324final class X509DigestTest extends TestCase
2425{
25- /** @var \DOMDocument */
26- private DOMDocument $ document ;
26+ use SerializableXMLTestTrait;
2727
2828 /** @var \SimpleSAML\XMLSecurity\Key\X509Certificate */
2929 private Key \X509Certificate $ key ;
@@ -36,14 +36,16 @@ final class X509DigestTest extends TestCase
3636 */
3737 public function setUp (): void
3838 {
39+ $ this ->testedClass = X509Digest::class;
40+
41+ $ this ->xmlRepresentation = DOMDocumentFactory::fromFile (
42+ dirname (dirname (dirname (dirname (__FILE__ )))) . '/tests/resources/xml/ds_X509Digest.xml '
43+ );
3944 $ this ->key = new Key \X509Certificate (
4045 PEMCertificatesMock::getPlainPublicKey ()
4146 );
42- $ this ->digest = base64_encode (hex2bin ($ this ->key ->getRawThumbprint (Constants::DIGEST_SHA256 )));
4347
44- $ this ->document = DOMDocumentFactory::fromFile (
45- dirname (dirname (dirname (dirname (__FILE__ )))) . '/tests/resources/xml/ds_X509Digest.xml '
46- );
48+ $ this ->digest = base64_encode (hex2bin ($ this ->key ->getRawThumbprint (Constants::DIGEST_SHA256 )));
4749 }
4850
4951
@@ -56,29 +58,20 @@ public function testMarshalling(): void
5658 $ this ->assertEquals ($ this ->digest , $ X509digest ->getDigest ());
5759 $ this ->assertEquals (Constants::DIGEST_SHA256 , $ X509digest ->getAlgorithm ());
5860
59- $ this ->assertEquals ($ this ->document ->saveXML ($ this ->document ->documentElement ), strval ($ X509digest ));
61+ $ this ->assertEquals (
62+ $ this ->xmlRepresentation ->saveXML ($ this ->xmlRepresentation ->documentElement ),
63+ strval ($ X509digest )
64+ );
6065 }
6166
6267
6368 /**
6469 */
6570 public function testUnmarshalling (): void
6671 {
67- $ X509digest = X509Digest::fromXML ($ this ->document ->documentElement );
72+ $ X509digest = X509Digest::fromXML ($ this ->xmlRepresentation ->documentElement );
6873
6974 $ this ->assertEquals ($ this ->digest , $ X509digest ->getDigest ());
7075 $ this ->assertEquals (Constants::DIGEST_SHA256 , $ X509digest ->getAlgorithm ());
7176 }
72-
73-
74- /**
75- * Test serialization / unserialization
76- */
77- public function testSerialization (): void
78- {
79- $ this ->assertEquals (
80- $ this ->document ->saveXML ($ this ->document ->documentElement ),
81- strval (unserialize (serialize (X509Digest::fromXML ($ this ->document ->documentElement ))))
82- );
83- }
8477}
0 commit comments