Skip to content

Commit f88586f

Browse files
committed
Additional PHPStan fixes
1 parent 376c990 commit f88586f

File tree

2 files changed

+42
-15
lines changed

2 files changed

+42
-15
lines changed

tests/PhpWordTests/Writer/HTML/ElementTest.php

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -149,8 +149,6 @@ public function testWriteRowSpan(): void
149149
$query = $xpath->query('/html/body/div/table/tr[1]/td');
150150
self::assertNotFalse($query);
151151
self::assertCount(2, $query);
152-
self::assertInstanceOf(DOMNode::class, $query->item(0));
153-
self::assertEquals('2', $query->item(0)->attributes->getNamedItem('colspan')->textContent);
154152

155153
$query = $xpath->query('/html/body/div/table/tr[1]/td[1]');
156154
self::assertNotFalse($query);
@@ -159,7 +157,7 @@ public function testWriteRowSpan(): void
159157

160158
$query = $xpath->query('/html/body/div/table/tr[2]/td');
161159
self::assertNotFalse($query);
162-
self::assertEquals(1, $query->length);
160+
self::assertCount(1, $query);
163161
}
164162

165163
/**
@@ -191,18 +189,26 @@ public function testWriteRowSpanAndColSpan(): void
191189

192190
$query = $xpath->query('/html/body/div/table/tr[1]/td');
193191
self::assertNotFalse($query);
194-
self::assertEquals(3, $query->length);
195-
self::assertEquals('2', $xpath->query('/html/body/div/table/tr[1]/td[2]')->item(0)->attributes->getNamedItem('colspan')->textContent);
196-
self::assertEquals('3', $xpath->query('/html/body/div/table/tr[1]/td[3]')->item(0)->attributes->getNamedItem('rowspan')->textContent);
192+
self::assertCount(3, $query);
193+
194+
$query = $xpath->query('/html/body/div/table/tr[1]/td[2]');
195+
self::assertNotFalse($query);
196+
self::assertInstanceOf(DOMNode::class, $query->item(0));
197+
self::assertEquals('2', $query->item(0)->attributes->getNamedItem('colspan')->textContent);
198+
199+
$query = $xpath->query('/html/body/div/table/tr[1]/td[3]');
200+
self::assertNotFalse($query);
201+
self::assertInstanceOf(DOMNode::class, $query->item(0));
202+
self::assertEquals('3', $query->item(0)->attributes->getNamedItem('rowspan')->textContent);
197203

198204
$query = $xpath->query('/html/body/div/table/tr[2]/td');
199205
self::assertNotFalse($query);
200-
self::assertEquals(1, $query->length);
206+
self::assertCount(1, $query);
201207
self::assertEquals('3', $xpath->query('/html/body/div/table/tr[2]/td[1]')->item(0)->attributes->getNamedItem('colspan')->textContent);
202208

203209
$query = $xpath->query('/html/body/div/table/tr[3]/td');
204210
self::assertNotFalse($query);
205-
self::assertEquals(3, $query->length);
211+
self::assertCount(3, $query);
206212
}
207213

208214
public function testWriteTitleTextRun(): void
@@ -268,7 +274,14 @@ public function testWriteTableLayout(): void
268274
$dom = Helper::getAsHTML($phpWord);
269275
$xpath = new DOMXPath($dom);
270276

271-
self::assertEquals('table-layout: fixed;', $xpath->query('/html/body/div/table[1]')->item(0)->attributes->getNamedItem('style')->textContent);
272-
self::assertEquals('table-layout: auto;', $xpath->query('/html/body/div/table[2]')->item(0)->attributes->getNamedItem('style')->textContent);
277+
$query = $xpath->query('/html/body/div/table[1]');
278+
self::assertNotFalse($query);
279+
self::assertInstanceOf(DOMNode::class, $query->item(0));
280+
self::assertEquals('table-layout: fixed;', $query->item(0)->attributes->getNamedItem('style')->textContent);
281+
282+
$query = $xpath->query('/html/body/div/table[2]');
283+
self::assertNotFalse($query);
284+
self::assertInstanceOf(DOMNode::class, $query->item(0));
285+
self::assertEquals('table-layout: auto;', $query->item(0)->attributes->getNamedItem('style')->textContent);
273286
}
274287
}

tests/PhpWordTests/Writer/HTML/Helper.php

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,14 +41,26 @@ public static function getTextContent(DOMXPath $xpath, string $query, string $na
4141
if ($item2 === null) {
4242
self::fail('Unexpected null return requesting item');
4343
} elseif ($namedItem !== '') {
44-
$item3 = $item2->attributes->getNamedItem($namedItem);
45-
if ($item3 === null) {
46-
self::fail('Unexpected null return requesting namedItem');
44+
if (!property_exists('attributes', $item2)) {
45+
self::fail('Unexpected incorrect object');
4746
} else {
48-
$returnVal = $item3->textContent;
47+
$item3 = $item2->attributes->getNamedItem($namedItem);
48+
if ($item3 === null) {
49+
self::fail('Unexpected null return requesting namedItem');
50+
} else {
51+
if (!property_exists('textContent', $item3)) {
52+
self::fail('Unexpected incorrect object');
53+
} else {
54+
$returnVal = $item3->textContent;
55+
}
56+
}
4957
}
5058
} else {
51-
$returnVal = $item2->textContent;
59+
if (!property_exists('textContent', $item2)) {
60+
self::fail('Unexpected incorrect object');
61+
} else {
62+
$returnVal = $item2->textContent;
63+
}
5264
}
5365
}
5466

@@ -66,6 +78,8 @@ public static function getNamedItem(DOMXPath $xpath, string $query, string $name
6678
$item2 = $item->item($itemNumber);
6779
if ($item2 === null) {
6880
self::fail('Unexpected null return requesting item');
81+
} elseif (!property_exists('attributes', $item2)) {
82+
self::fail('Unexpected incorrect object');
6983
} else {
7084
$returnValue = $item2->attributes->getNamedItem($namedItem);
7185
}

0 commit comments

Comments
 (0)