Skip to content

Commit 4fa8f25

Browse files
committed
Migrate a few tests to serialization trait
1 parent 2a67536 commit 4fa8f25

3 files changed

Lines changed: 33 additions & 54 deletions

File tree

tests/XML/ds/CanonicalizationMethodTest.php

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
use DOMDocument;
88
use PHPUnit\Framework\TestCase;
9+
use SimpleSAML\Test\XML\SerializableXMLTestTrait;
910
use SimpleSAML\XML\DOMDocumentFactory;
1011
use SimpleSAML\XMLSecurity\Constants;
1112
use SimpleSAML\XMLSecurity\XML\ds\CanonicalizationMethod;
@@ -20,14 +21,15 @@
2021
*/
2122
final class CanonicalizationMethodTest extends TestCase
2223
{
23-
/** @var \DOMDocument */
24-
private DOMDocument $document;
24+
use SerializableXMLTestTrait;
2525

2626
/**
2727
*/
2828
protected function setUp(): void
2929
{
30-
$this->document = DOMDocumentFactory::fromFile(
30+
$this->testedClass = CanonicalizationMethod::class;
31+
32+
$this->xmlRepresentation = DOMDocumentFactory::fromFile(
3133
dirname(dirname(dirname(dirname(__FILE__)))) . '/tests/resources/xml/ds_CanonicalizationMethod.xml'
3234
);
3335
}
@@ -41,28 +43,19 @@ public function testMarshalling(): void
4143

4244
$this->assertEquals(Constants::C14N_EXCLUSIVE_WITHOUT_COMMENTS, $CanonicalizationMethod->getAlgorithm());
4345

44-
$this->assertEquals($this->document->saveXML($this->document->documentElement), strval($CanonicalizationMethod));
46+
$this->assertEquals(
47+
$this->xmlRepresentation->saveXML($this->xmlRepresentation->documentElement),
48+
strval($CanonicalizationMethod)
49+
);
4550
}
4651

4752

4853
/**
4954
*/
5055
public function testUnmarshalling(): void
5156
{
52-
$CanonicalizationMethod = CanonicalizationMethod::fromXML($this->document->documentElement);
57+
$CanonicalizationMethod = CanonicalizationMethod::fromXML($this->xmlRepresentation->documentElement);
5358

5459
$this->assertEquals(Constants::C14N_EXCLUSIVE_WITHOUT_COMMENTS, $CanonicalizationMethod->getAlgorithm());
5560
}
56-
57-
58-
/**
59-
* Test serialization / unserialization
60-
*/
61-
public function testSerialization(): void
62-
{
63-
$this->assertEquals(
64-
$this->document->saveXML($this->document->documentElement),
65-
strval(unserialize(serialize(CanonicalizationMethod::fromXML($this->document->documentElement))))
66-
);
67-
}
6861
}

tests/XML/ds/SignatureMethodTest.php

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
use DOMDocument;
88
use PHPUnit\Framework\TestCase;
9+
use SimpleSAML\Test\XML\SerializableXMLTestTrait;
910
use SimpleSAML\XML\DOMDocumentFactory;
1011
use SimpleSAML\XMLSecurity\Constants;
1112
use SimpleSAML\XMLSecurity\XML\ds\SignatureMethod;
@@ -20,14 +21,15 @@
2021
*/
2122
final class SignatureMethodTest extends TestCase
2223
{
23-
/** @var \DOMDocument */
24-
private DOMDocument $document;
24+
use SerializableXMLTestTrait;
2525

2626
/**
2727
*/
2828
protected function setUp(): void
2929
{
30-
$this->document = DOMDocumentFactory::fromFile(
30+
$this->testedClass = SignatureMethod::class;
31+
32+
$this->xmlRepresentation = DOMDocumentFactory::fromFile(
3133
dirname(dirname(dirname(dirname(__FILE__)))) . '/tests/resources/xml/ds_SignatureMethod.xml'
3234
);
3335
}
@@ -41,28 +43,19 @@ public function testMarshalling(): void
4143

4244
$this->assertEquals(Constants::SIG_RSA_SHA256, $SignatureMethod->getAlgorithm());
4345

44-
$this->assertEquals($this->document->saveXML($this->document->documentElement), strval($SignatureMethod));
46+
$this->assertEquals(
47+
$this->xmlRepresentation->saveXML($this->xmlRepresentation->documentElement),
48+
strval($SignatureMethod)
49+
);
4550
}
4651

4752

4853
/**
4954
*/
5055
public function testUnmarshalling(): void
5156
{
52-
$SignatureMethod = SignatureMethod::fromXML($this->document->documentElement);
57+
$SignatureMethod = SignatureMethod::fromXML($this->xmlRepresentation->documentElement);
5358

5459
$this->assertEquals(Constants::SIG_RSA_SHA256, $SignatureMethod->getAlgorithm());
5560
}
56-
57-
58-
/**
59-
* Test serialization / unserialization
60-
*/
61-
public function testSerialization(): void
62-
{
63-
$this->assertEquals(
64-
$this->document->saveXML($this->document->documentElement),
65-
strval(unserialize(serialize(SignatureMethod::fromXML($this->document->documentElement))))
66-
);
67-
}
6861
}

tests/XML/ds/X509DigestTest.php

Lines changed: 13 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
use DOMDocument;
88
use PHPUnit\Framework\TestCase;
9+
use SimpleSAML\Test\XML\SerializableXMLTestTrait;
910
use SimpleSAML\XML\DOMDocumentFactory;
1011
use SimpleSAML\XMLSecurity\Constants;
1112
use SimpleSAML\XMLSecurity\Key;
@@ -22,8 +23,7 @@
2223
*/
2324
final 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

Comments
 (0)