@@ -34,12 +34,12 @@ public function it_should_be_able_to_count_selectors($markup, $expected)
34
34
public function getInnerHtml_should_retrieve_the_inner_HTML_for_each_matching_element ()
35
35
{
36
36
$ markup = <<<'HTML'
37
- <ul>
38
- <li>The <strong>strong</strong> element</li>
39
- <li>The <em>em</em> element</li>
40
- <li>The <kbd>kbd</kbd> element</li>
41
- </ul>
42
- HTML;
37
+ <ul>
38
+ <li>The <strong>strong</strong> element</li>
39
+ <li>The <em>em</em> element</li>
40
+ <li>The <kbd>kbd</kbd> element</li>
41
+ </ul>
42
+ HTML;
43
43
$ dom = new DOM ($ markup );
44
44
45
45
$ this ->assertSame (
@@ -48,7 +48,7 @@ public function getInnerHtml_should_retrieve_the_inner_HTML_for_each_matching_el
48
48
'The <em>em</em> element ' ,
49
49
'The <kbd>kbd</kbd> element ' ,
50
50
],
51
- $ dom ->getInnerHtml (new Selector ('li ' )),
51
+ $ dom ->getInnerHtml (new Selector ('li ' ))
52
52
);
53
53
}
54
54
@@ -63,6 +63,42 @@ public function getInnerHtml_should_return_an_empty_array_if_there_are_no_matche
63
63
$ this ->assertEmpty ($ dom ->getInnerHtml (new Selector ('h2 ' )));
64
64
}
65
65
66
+ /**
67
+ * @test
68
+ * @testdox getOuterHtml() should retrieve the outer HTML for each matching element.
69
+ */
70
+ public function getOuterHtml_should_retrieve_the_outer_HTML_for_each_matching_element ()
71
+ {
72
+ $ markup = <<<'HTML'
73
+ <ul>
74
+ <li>The <strong>strong</strong> element</li>
75
+ <li>The <em>em</em> element</li>
76
+ <li>The <kbd>kbd</kbd> element</li>
77
+ </ul>
78
+ HTML;
79
+ $ dom = new DOM ($ markup );
80
+
81
+ $ this ->assertSame (
82
+ [
83
+ '<li>The <strong>strong</strong> element</li> ' ,
84
+ '<li>The <em>em</em> element</li> ' ,
85
+ '<li>The <kbd>kbd</kbd> element</li> ' ,
86
+ ],
87
+ $ dom ->getOuterHtml (new Selector ('li ' ))
88
+ );
89
+ }
90
+
91
+ /**
92
+ * @test
93
+ * @testdox getOuterHtml() should return an empty array if there are no matches
94
+ */
95
+ public function getOuterHtml_should_return_an_empty_array_if_there_are_no_matches ()
96
+ {
97
+ $ dom = new DOM ('<h1>A title</h1> ' );
98
+
99
+ $ this ->assertEmpty ($ dom ->getOuterHtml (new Selector ('h2 ' )));
100
+ }
101
+
66
102
/**
67
103
* @test
68
104
* @testdox query() should throw a SelectorException if the selector is invalid
@@ -100,12 +136,7 @@ public function provideMarkupWithInnerClass()
100
136
];
101
137
102
138
yield 'Two matches ' => [
103
- <<<'HTML'
104
- <div class="outer">
105
- <div class="inner">One</div>
106
- <div class="inner">Two</div>
107
- </div>
108
- HTML,
139
+ '<div class="outer"><div class="inner">One</div><div class="inner">Two</div></div> ' ,
109
140
2
110
141
];
111
142
}
0 commit comments