@@ -38,7 +38,7 @@ public function testAddElement(): void
38
38
Media::addElement ('section ' , $ imageElement );
39
39
$ elements = Media::getElements ('section ' );
40
40
self ::assertCount (1 , $ elements );
41
- self ::assertEquals ( ' section ' , $ elements [0 ]['target ' ]);
41
+ self ::assertMatchesRegularExpression ( ' /^image\d+\.jpg$/ ' , $ elements [0 ]['target ' ]);
42
42
self ::assertEquals ($ imagePath , $ elements [0 ]['source ' ]);
43
43
self ::assertStringStartsWith ('image1. ' , $ elements [0 ]['target ' ]);
44
44
@@ -47,18 +47,19 @@ public function testAddElement(): void
47
47
Media::addElement ('header ' , $ headerImageElement );
48
48
$ headerElements = Media::getElements ('header ' );
49
49
self ::assertCount (1 , $ headerElements );
50
- self ::assertEquals ( ' header ' , $ headerElements [0 ]['target ' ]);
50
+ self ::assertMatchesRegularExpression ( ' /^image\d+\.jpg$/ ' , $ headerElements [0 ]['target ' ]);
51
51
self ::assertEquals ($ imagePath , $ headerElements [0 ]['source ' ]);
52
- self ::assertStringStartsWith ('image1. ' , $ headerElements [0 ]['target ' ]);
52
+ // The counter may increment, so check for image2.
53
+ self ::assertStringStartsWith ('image2. ' , $ headerElements [0 ]['target ' ]);
53
54
54
55
// Add footer media
55
56
$ footerImageElement = new Image ($ imagePath );
56
57
Media::addElement ('footer ' , $ footerImageElement );
57
58
$ footerElements = Media::getElements ('footer ' );
58
59
self ::assertCount (1 , $ footerElements );
59
- self ::assertEquals ( ' footer ' , $ footerElements [0 ]['target ' ]);
60
+ self ::assertMatchesRegularExpression ( ' /^image\d+\.jpg$/ ' , $ footerElements [0 ]['target ' ]);
60
61
self ::assertEquals ($ imagePath , $ footerElements [0 ]['source ' ]);
61
- self ::assertStringStartsWith ('image1 . ' , $ footerElements [0 ]['target ' ]);
62
+ self ::assertStringStartsWith ('image3 . ' , $ footerElements [0 ]['target ' ]);
62
63
63
64
// Test invalid container type - Note: addElement doesn't validate docPart string anymore,
64
65
// it just creates a new key in the $elements array.
@@ -67,6 +68,9 @@ public function testAddElement(): void
67
68
Media::addElement ('invalid ' , $ invalidImageElement );
68
69
$ invalidElements = Media::getElements ('invalid ' );
69
70
self ::assertCount (1 , $ invalidElements ); // Element is added under 'invalid' key
71
+ self ::assertMatchesRegularExpression ('/^image\d+\.jpg$/ ' , $ invalidElements [0 ]['target ' ]);
72
+ self ::assertEquals ($ imagePath , $ invalidElements [0 ]['source ' ]);
73
+ self ::assertStringStartsWith ('image4. ' , $ invalidElements [0 ]['target ' ]);
70
74
71
75
// Check counts for valid types remain unchanged by the 'invalid' add
72
76
$ allValidElements = ['section ' , 'header ' , 'footer ' ];
0 commit comments