ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilHtmlPurifierCompositeTest Class Reference
+ Inheritance diagram for ilHtmlPurifierCompositeTest:
+ Collaboration diagram for ilHtmlPurifierCompositeTest:

Public Member Functions

 testPurifierNodesAreCalledIfStringGetsPurified ()
 
 testPurifierNodesAreCalledIfArrayOfStringGetssPurified ()
 
 testExceptionIsRaisedIfNonStringElementsArePassedForHtmlBatchProcessing ($element)
 

Static Public Member Functions

static invalidHtmlDataTypeProvider ()
 

Private Member Functions

 getFakePurifier ()
 

Private Attributes

const array TO_PURIFY
 

Detailed Description

Definition at line 24 of file ilHtmlPurifierCompositeTest.php.

Member Function Documentation

◆ getFakePurifier()

ilHtmlPurifierCompositeTest::getFakePurifier ( )
private

Definition at line 32 of file ilHtmlPurifierCompositeTest.php.

33 {
34 return new class () implements ilHtmlPurifierInterface {
35 public function purify(string $html): string
36 {
37 return $html . '.';
38 }
39
40 public function purifyArray(array $htmlCollection): array
41 {
42 foreach ($htmlCollection as &$html) {
43 $html .= '.';
44 }
45
46 return $htmlCollection;
47 }
48 };
49 }
Interface for html sanitizing functionality.

Referenced by testPurifierNodesAreCalledIfArrayOfStringGetssPurified(), and testPurifierNodesAreCalledIfStringGetsPurified().

+ Here is the caller graph for this function:

◆ invalidHtmlDataTypeProvider()

static ilHtmlPurifierCompositeTest::invalidHtmlDataTypeProvider ( )
static
Returns
array{integer: int[], float: float[], null: null[], array: never[][], object: \stdClass[], bool: false[], resource: resource[]|false[]}

Definition at line 98 of file ilHtmlPurifierCompositeTest.php.

98 : array
99 {
100 return [
101 'integer' => [5],
102 'float' => [0.1],
103 'null' => [null],
104 'array' => [[]],
105 'object' => [new stdClass()],
106 'bool' => [false],
107 'resource' => [fopen('php://memory', 'rb')],
108 ];
109 }

◆ testExceptionIsRaisedIfNonStringElementsArePassedForHtmlBatchProcessing()

ilHtmlPurifierCompositeTest::testExceptionIsRaisedIfNonStringElementsArePassedForHtmlBatchProcessing (   $element)

Definition at line 112 of file ilHtmlPurifierCompositeTest.php.

112 : void
113 {
114 $this->expectException(InvalidArgumentException::class);
115
116 $purifier = new ilHtmlPurifierComposite();
117 $purifier->purifyArray([$element]);
118 }
Composite for nesting multiple purifiers.

◆ testPurifierNodesAreCalledIfArrayOfStringGetssPurified()

ilHtmlPurifierCompositeTest::testPurifierNodesAreCalledIfArrayOfStringGetssPurified ( )

Definition at line 71 of file ilHtmlPurifierCompositeTest.php.

71 : void
72 {
73 $purifier = new ilHtmlPurifierComposite();
74
75 $p1 = $this->getFakePurifier();
76 $p2 = clone $p1;
77 $p3 = clone $p1;
78
79 $purifier->addPurifier($p1);
80 $purifier->addPurifier($p1);
81 $purifier->addPurifier($p2);
82 $purifier->addPurifier($p3);
83
84 $this->assertSame(array_map(static function (string $html): string {
85 return $html . '...';
86 }, self::TO_PURIFY), $purifier->purifyArray(self::TO_PURIFY));
87
88 $purifier->removePurifier($p2);
89
90 $this->assertSame(array_map(static function (string $html): string {
91 return $html . '..';
92 }, self::TO_PURIFY), $purifier->purifyArray(self::TO_PURIFY));
93 }

References getFakePurifier(), and TO_PURIFY.

+ Here is the call graph for this function:

◆ testPurifierNodesAreCalledIfStringGetsPurified()

ilHtmlPurifierCompositeTest::testPurifierNodesAreCalledIfStringGetsPurified ( )

Definition at line 51 of file ilHtmlPurifierCompositeTest.php.

51 : void
52 {
53 $purifier = new ilHtmlPurifierComposite();
54
55 $p1 = $this->getFakePurifier();
56 $p2 = clone $p1;
57 $p3 = clone $p1;
58
59 $purifier->addPurifier($p1);
60 $purifier->addPurifier($p1);
61 $purifier->addPurifier($p2);
62 $purifier->addPurifier($p3);
63
64 $this->assertSame('phpunit...', $purifier->purify('phpunit'));
65
66 $purifier->removePurifier($p2);
67
68 $this->assertSame('phpunit..', $purifier->purify('phpunit'));
69 }

References getFakePurifier().

+ Here is the call graph for this function:

Field Documentation

◆ TO_PURIFY

const array ilHtmlPurifierCompositeTest::TO_PURIFY
private
Initial value:
= [
'phpunit1',
'phpunit2',
'phpunit3',
]

Definition at line 26 of file ilHtmlPurifierCompositeTest.php.

Referenced by testPurifierNodesAreCalledIfArrayOfStringGetssPurified().


The documentation for this class was generated from the following file: