Skip to content

Commit 725aacc

Browse files
committed
Fixed PHPUnit
1 parent a2ab6fb commit 725aacc

File tree

14 files changed

+166
-21
lines changed

14 files changed

+166
-21
lines changed

tests/PhpPresentation/Tests/PresentationPropertiesTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
namespace PhpOffice\PhpPresentation\Tests;
2222

2323
use PhpOffice\PhpPresentation\PresentationProperties;
24+
use PHPUnit\Framework\Attributes\DataProvider;
2425
use PHPUnit\Framework\TestCase;
2526

2627
/**
@@ -81,6 +82,7 @@ public function testMarkAsFinal(): void
8182
/**
8283
* @dataProvider dataProviderSlideshowType
8384
*/
85+
#[DataProvider('dataProviderSlideshowType')]
8486
public function testSlideshowType(?string $value, string $expected): void
8587
{
8688
$object = new PresentationProperties();

tests/PhpPresentation/Tests/Shape/AbstractGraphicTest.php

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,12 @@ public function testWidthAndHeight(): void
3535
$min = 10;
3636
$max = 20;
3737
/** @var AbstractGraphic $stub */
38-
$stub = $this->getMockForAbstractClass('PhpOffice\\PhpPresentation\\Shape\\AbstractGraphic');
38+
if (method_exists($this, 'getMockForAbstractClass')) {
39+
$stub = $this->getMockForAbstractClass(AbstractGraphic::class);
40+
} else {
41+
$stub = new class() extends AbstractGraphic {
42+
};
43+
}
3944
self::assertInstanceOf('PhpOffice\\PhpPresentation\\Shape\\AbstractGraphic', $stub->setResizeProportional(false));
4045
self::assertInstanceOf('PhpOffice\\PhpPresentation\\Shape\\AbstractGraphic', $stub->setWidth($min));
4146
self::assertEquals($min, $stub->getWidth());
@@ -68,7 +73,12 @@ public function testWidthAndHeight2(): void
6873
$min = 10;
6974
$max = 20;
7075
/** @var AbstractGraphic $stub */
71-
$stub = $this->getMockForAbstractClass('PhpOffice\\PhpPresentation\\Shape\\AbstractGraphic');
76+
if (method_exists($this, 'getMockForAbstractClass')) {
77+
$stub = $this->getMockForAbstractClass(AbstractGraphic::class);
78+
} else {
79+
$stub = new class() extends AbstractGraphic {
80+
};
81+
}
7282
self::assertInstanceOf('PhpOffice\\PhpPresentation\\Shape\\AbstractGraphic', $stub->setResizeProportional(false));
7383
self::assertInstanceOf('PhpOffice\\PhpPresentation\\Shape\\AbstractGraphic', $stub->setWidth($max));
7484
self::assertEquals($max, $stub->getWidth());

tests/PhpPresentation/Tests/Shape/Chart/Type/AbstractTest.php

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,16 @@ public function testHashIndex(): void
5353
public function testSeries(): void
5454
{
5555
/** @var AbstractType $stub */
56-
$stub = $this->getMockForAbstractClass(AbstractType::class);
56+
if (method_exists($this, 'getMockForAbstractClass')) {
57+
$stub = $this->getMockForAbstractClass(AbstractType::class);
58+
} else {
59+
$stub = new class() extends AbstractType {
60+
public function getHashCode(): string
61+
{
62+
return '';
63+
}
64+
};
65+
}
5766
self::assertEmpty($stub->getSeries());
5867
self::assertIsArray($stub->getSeries());
5968

@@ -76,7 +85,16 @@ public function testClone(): void
7685
];
7786

7887
/** @var AbstractType $stub */
79-
$stub = $this->getMockForAbstractClass(AbstractType::class);
88+
if (method_exists($this, 'getMockForAbstractClass')) {
89+
$stub = $this->getMockForAbstractClass(AbstractType::class);
90+
} else {
91+
$stub = new class() extends AbstractType {
92+
public function getHashCode(): string
93+
{
94+
return '';
95+
}
96+
};
97+
}
8098
$stub->setSeries($arraySeries);
8199
$clone = clone $stub;
82100

tests/PhpPresentation/Tests/Shape/Drawing/FileTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
use PhpOffice\PhpPresentation\Exception\FileNotFoundException;
2424
use PhpOffice\PhpPresentation\Shape\Drawing\File;
25+
use PHPUnit\Framework\Attributes\DataProvider;
2526
use PHPUnit\Framework\TestCase;
2627

2728
/**
@@ -69,6 +70,7 @@ public function testPathWithRealFile(): void
6970
/**
7071
* @dataProvider dataProviderMimeType
7172
*/
73+
#[DataProvider('dataProviderMimeType')]
7274
public function testMimeType(string $pathFile, string $mimeType): void
7375
{
7476
$object = new File();

tests/PhpPresentation/Tests/Slide/AbstractSlideTest.php

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,12 @@ class AbstractSlideTest extends TestCase
3939
public function testCollection(): void
4040
{
4141
/** @var AbstractSlide $object */
42-
$object = $this->getMockForAbstractClass(AbstractSlide::class);
42+
if (method_exists($this, 'getMockForAbstractClass')) {
43+
$object = $this->getMockForAbstractClass(AbstractSlide::class);
44+
} else {
45+
$object = new class() extends AbstractSlide {
46+
};
47+
}
4348

4449
$array = [];
4550
self::assertInstanceOf(AbstractSlide::class, $object->setShapeCollection($array));
@@ -59,7 +64,12 @@ public function testCollection(): void
5964
public function testAdd(): void
6065
{
6166
/** @var AbstractSlide $object */
62-
$object = $this->getMockForAbstractClass(AbstractSlide::class);
67+
if (method_exists($this, 'getMockForAbstractClass')) {
68+
$object = $this->getMockForAbstractClass(AbstractSlide::class);
69+
} else {
70+
$object = new class() extends AbstractSlide {
71+
};
72+
}
6373

6474
self::assertInstanceOf(AutoShape::class, $object->createAutoShape());
6575
self::assertInstanceOf(Chart::class, $object->createChartShape());
@@ -73,7 +83,12 @@ public function testAdd(): void
7383
public function testSearchShapes(): void
7484
{
7585
/** @var AbstractSlide $object */
76-
$object = $this->getMockForAbstractClass(AbstractSlide::class);
86+
if (method_exists($this, 'getMockForAbstractClass')) {
87+
$object = $this->getMockForAbstractClass(AbstractSlide::class);
88+
} else {
89+
$object = new class() extends AbstractSlide {
90+
};
91+
}
7792

7893
$array = [
7994
(new RichText())->setName('AAA'),

tests/PhpPresentation/Tests/Slide/AnimationTest.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,12 @@ class AnimationTest extends TestCase
3434
public function testShape(): void
3535
{
3636
/** @var AbstractShape $oStub */
37-
$oStub = $this->getMockForAbstractClass(AbstractShape::class);
37+
if (method_exists($this, 'getMockForAbstractClass')) {
38+
$oStub = $this->getMockForAbstractClass(AbstractShape::class);
39+
} else {
40+
$oStub = new class() extends AbstractShape {
41+
};
42+
}
3843

3944
$object = new Animation();
4045

tests/PhpPresentation/Tests/Slide/SlideLayoutTest.php

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,12 @@ class SlideLayoutTest extends TestCase
3434
public function testBase(): void
3535
{
3636
/** @var SlideMaster $mockSlideMaster */
37-
$mockSlideMaster = $this->getMockForAbstractClass(SlideMaster::class);
37+
if (method_exists($this, 'getMockForAbstractClass')) {
38+
$mockSlideMaster = $this->getMockForAbstractClass(SlideMaster::class);
39+
} else {
40+
$mockSlideMaster = new class() extends SlideMaster {
41+
};
42+
}
3843

3944
$object = new SlideLayout($mockSlideMaster);
4045
self::assertInstanceOf('PhpOffice\\PhpPresentation\\Slide\\AbstractSlide', $object);
@@ -45,7 +50,12 @@ public function testBase(): void
4550
public function testLayoutName(): void
4651
{
4752
/** @var SlideMaster $mockSlideMaster */
48-
$mockSlideMaster = $this->getMockForAbstractClass(SlideMaster::class);
53+
if (method_exists($this, 'getMockForAbstractClass')) {
54+
$mockSlideMaster = $this->getMockForAbstractClass(SlideMaster::class);
55+
} else {
56+
$mockSlideMaster = new class() extends SlideMaster {
57+
};
58+
}
4959

5060
// Expected
5161
$expectedLayoutName = 'Title' . mt_rand(1, 100);
@@ -60,7 +70,12 @@ public function testLayoutName(): void
6070
public function testSlideMaster(): void
6171
{
6272
/** @var SlideMaster $mockSlideMaster */
63-
$mockSlideMaster = $this->getMockForAbstractClass(SlideMaster::class);
73+
if (method_exists($this, 'getMockForAbstractClass')) {
74+
$mockSlideMaster = $this->getMockForAbstractClass(SlideMaster::class);
75+
} else {
76+
$mockSlideMaster = new class() extends SlideMaster {
77+
};
78+
}
6479

6580
$object = new SlideLayout($mockSlideMaster);
6681

tests/PhpPresentation/Tests/Slide/SlideMasterTest.php

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,12 @@ public function testLayout(): void
5454

5555
// Mock Post
5656
/** @var SlideLayout $mockSlideLayout */
57-
$mockSlideLayout = $this->getMockForAbstractClass(SlideLayout::class, [$object]);
57+
if (method_exists($this, 'getMockForAbstractClass')) {
58+
$mockSlideLayout = $this->getMockForAbstractClass(SlideLayout::class, [$object]);
59+
} else {
60+
$mockSlideLayout = new class($object) extends SlideLayout {
61+
};
62+
}
5863

5964
self::assertEmpty($object->getAllSlideLayouts());
6065
self::assertInstanceOf(SlideLayout::class, $object->createSlideLayout());
@@ -66,11 +71,21 @@ public function testSchemeColors(): void
6671
{
6772
// Mock Pre
6873
/** @var SchemeColor $mockSchemeColorAccent1 */
69-
$mockSchemeColorAccent1 = $this->getMockForAbstractClass(SchemeColor::class);
74+
if (method_exists($this, 'getMockForAbstractClass')) {
75+
$mockSchemeColorAccent1 = $this->getMockForAbstractClass(SchemeColor::class);
76+
} else {
77+
$mockSchemeColorAccent1 = new class() extends SchemeColor {
78+
};
79+
}
7080
$mockSchemeColorAccent1->setValue('accent1');
7181
$mockSchemeColorAccent1->setRGB('ABCDEF');
7282
/** @var SchemeColor $mockSchemeColorNew */
73-
$mockSchemeColorNew = $this->getMockForAbstractClass(SchemeColor::class);
83+
if (method_exists($this, 'getMockForAbstractClass')) {
84+
$mockSchemeColorNew = $this->getMockForAbstractClass(SchemeColor::class);
85+
} else {
86+
$mockSchemeColorNew = new class() extends SchemeColor {
87+
};
88+
}
7489
$mockSchemeColorNew->setValue('new');
7590
$mockSchemeColorNew->setRGB('ABCDEF');
7691

@@ -90,7 +105,12 @@ public function testTextStyles(): void
90105
{
91106
// Mock Pre
92107
/** @var TextStyle $mockTextStyle */
93-
$mockTextStyle = $this->getMockForAbstractClass(TextStyle::class);
108+
if (method_exists($this, 'getMockForAbstractClass')) {
109+
$mockTextStyle = $this->getMockForAbstractClass(TextStyle::class);
110+
} else {
111+
$mockTextStyle = new class() extends TextStyle {
112+
};
113+
}
94114

95115
$object = new SlideMaster();
96116

tests/PhpPresentation/Tests/SlideTest.php

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,12 @@ public function testSlideMasterId(): void
7878
public function testAnimations(): void
7979
{
8080
/** @var Animation $oStub */
81-
$oStub = $this->getMockForAbstractClass(Animation::class);
81+
if (method_exists($this, 'getMockForAbstractClass')) {
82+
$oStub = $this->getMockForAbstractClass(Animation::class);
83+
} else {
84+
$oStub = new class() extends Animation {
85+
};
86+
}
8287

8388
$object = new Slide();
8489
self::assertIsArray($object->getAnimations());
@@ -97,7 +102,12 @@ public function testAnimations(): void
97102
public function testBackground(): void
98103
{
99104
/** @var AbstractBackground $oStub */
100-
$oStub = $this->getMockForAbstractClass(AbstractBackground::class);
105+
if (method_exists($this, 'getMockForAbstractClass')) {
106+
$oStub = $this->getMockForAbstractClass(AbstractBackground::class);
107+
} else {
108+
$oStub = new class() extends AbstractBackground {
109+
};
110+
}
101111

102112
$object = new Slide();
103113
self::assertNull($object->getBackground());

tests/PhpPresentation/Tests/Writer/AbstractWriterTest.php

Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,30 @@ class AbstractWriterTest extends TestCase
4141
public function testConstruct(): void
4242
{
4343
/** @var AbstractWriter $oStubWriter */
44-
$oStubWriter = $this->getMockForAbstractClass(AbstractWriter::class);
44+
if (method_exists($this, 'getMockForAbstractClass')) {
45+
$oStubWriter = $this->getMockForAbstractClass(AbstractWriter::class);
46+
} else {
47+
$oStubWriter = new class() extends AbstractWriter {
48+
};
49+
}
4550
/** @var ZipInterface $oStubZip */
46-
$oStubZip = $this->getMockForAbstractClass(ZipInterface::class);
51+
if (method_exists($this, 'getMockForAbstractClass')) {
52+
$oStubZip = $this->getMockForAbstractClass(ZipInterface::class);
53+
} else {
54+
$oStubZip = new class() implements ZipInterface {
55+
public function open($filename): void
56+
{
57+
}
58+
59+
public function close(): void
60+
{
61+
}
62+
63+
public function addFromString(string $localname, string $contents, bool $withCompression = true): void
64+
{
65+
}
66+
};
67+
}
4768

4869
self::assertNull($oStubWriter->getZipAdapter());
4970
self::assertInstanceOf(AbstractWriter::class, $oStubWriter->setZipAdapter($oStubZip));
@@ -65,7 +86,12 @@ public function testAllDrawingsIncludesMasterSlides(): void
6586
$masterSlide->createDrawingShape();
6687

6788
/** @var TestAbstractWriter $writer */
68-
$writer = $this->getMockForAbstractClass(TestAbstractWriter::class);
89+
if (method_exists($this, 'getMockForAbstractClass')) {
90+
$writer = $this->getMockForAbstractClass(TestAbstractWriter::class);
91+
} else {
92+
$writer = new class() extends TestAbstractWriter {
93+
};
94+
}
6995
$writer->setPhpPresentation($presentation);
7096

7197
$drawings = $writer->allDrawings();

0 commit comments

Comments
 (0)