|
1 | 1 | <?php |
2 | 2 |
|
3 | 3 | use PHPUnit\Framework\AssertionFailedError; |
4 | | -use Sinnbeck\DomAssertions\Asserts\ElementAssert; |
| 4 | +use Sinnbeck\DomAssertions\Asserts\AssertElement; |
5 | 5 |
|
6 | 6 | it('can handle an empty view', function () { |
7 | 7 | $this->get('empty') |
|
31 | 31 |
|
32 | 32 | it('can find the body', function () { |
33 | 33 | $this->get('nesting') |
34 | | - ->assertElement(function (ElementAssert $assert) { |
| 34 | + ->assertElement(function (AssertElement $assert) { |
35 | 35 | $assert->is('body'); |
36 | 36 | }); |
37 | 37 | }); |
|
51 | 51 |
|
52 | 52 | it('can check the element has the correct type', function () { |
53 | 53 | $this->get('nesting') |
54 | | - ->assertElement('#nav', function (ElementAssert $element) { |
| 54 | + ->assertElement('#nav', function (AssertElement $element) { |
55 | 55 | $element->is('nav'); |
56 | 56 | }); |
57 | 57 | }); |
58 | 58 |
|
59 | 59 | it('can fail matching element type', function () { |
60 | 60 | $this->get('nesting') |
61 | | - ->assertElement('#nav', function (ElementAssert $element) { |
| 61 | + ->assertElement('#nav', function (AssertElement $element) { |
62 | 62 | $element->is('div'); |
63 | 63 | }); |
64 | 64 | })->throws( |
|
73 | 73 |
|
74 | 74 | it('can find a nested element', function () { |
75 | 75 | $this->get('nesting') |
76 | | - ->assertElement(function (ElementAssert $element) { |
| 76 | + ->assertElement(function (AssertElement $element) { |
77 | 77 | $element->containsDiv(); |
78 | 78 | }); |
79 | 79 | }); |
80 | 80 |
|
81 | 81 | it('can find a nested element with content', function () { |
82 | 82 | $this->get('nesting') |
83 | | - ->assertElement(function (ElementAssert $element) { |
| 83 | + ->assertElement(function (AssertElement $element) { |
84 | 84 | $element->contains('div', [ |
85 | 85 | 'class' => 'foobar', |
86 | 86 | ]); |
|
89 | 89 |
|
90 | 90 | it('can match text content', function () { |
91 | 91 | $this->get('nesting') |
92 | | - ->assertElement('span.bar', function (ElementAssert $element) { |
| 92 | + ->assertElement('span.bar', function (AssertElement $element) { |
93 | 93 | $element->has('text', 'Foo'); |
94 | 94 | }); |
95 | 95 | }); |
96 | 96 |
|
97 | 97 | it('can match a class no matter the order', function () { |
98 | 98 | $this->get('nesting') |
99 | | - ->assertElement(function (ElementAssert $element) { |
| 99 | + ->assertElement(function (AssertElement $element) { |
100 | 100 | $element->contains('span', [ |
101 | 101 | 'class' => 'foo bar', |
102 | 102 | ]); |
103 | | - $element->find('span', function (ElementAssert $span) { |
| 103 | + $element->find('span', function (AssertElement $span) { |
104 | 104 | $span->has('class', 'foo bar'); |
105 | 105 | }); |
106 | 106 | }); |
107 | 107 | }); |
108 | 108 |
|
109 | 109 | it('can match a partial class', function () { |
110 | 110 | $this->get('nesting') |
111 | | - ->assertElement(function (ElementAssert $element) { |
| 111 | + ->assertElement(function (AssertElement $element) { |
112 | 112 | $element->contains('span', [ |
113 | 113 | 'class' => 'foo bar', |
114 | 114 | ]); |
115 | | - $element->find('span', function (ElementAssert $span) { |
| 115 | + $element->find('span', function (AssertElement $span) { |
116 | 116 | $span->has('class', 'bar'); |
117 | 117 | }); |
118 | 118 | }); |
119 | 119 | }); |
120 | 120 |
|
121 | 121 | it('can find multiple identical items', function () { |
122 | 122 | $this->get('nesting') |
123 | | - ->assertElement(function (ElementAssert $element) { |
| 123 | + ->assertElement(function (AssertElement $element) { |
124 | 124 | $element->contains('div', [], 4); |
125 | 125 | }); |
126 | 126 | }); |
127 | 127 |
|
128 | 128 | it('can find multiple identical items simplified', function () { |
129 | 129 | $this->get('nesting') |
130 | | - ->assertElement(function (ElementAssert $element) { |
| 130 | + ->assertElement(function (AssertElement $element) { |
131 | 131 | $element->contains('div', 4); |
132 | 132 | }); |
133 | 133 | }); |
134 | 134 |
|
135 | 135 | it('can find multiple identical items with content', function () { |
136 | 136 | $this->get('nesting') |
137 | | - ->assertElement(function (ElementAssert $element) { |
| 137 | + ->assertElement(function (AssertElement $element) { |
138 | 138 | $element->contains('ul > li', [ |
139 | 139 | 'x-data' => 'foobar', |
140 | 140 | ], 2); |
|
143 | 143 |
|
144 | 144 | it('can find multiple identical items with content ensuring no wrong matches', function () { |
145 | 145 | $this->get('nesting') |
146 | | - ->assertElement(function (ElementAssert $element) { |
| 146 | + ->assertElement(function (AssertElement $element) { |
147 | 147 | $element->contains('div', [ |
148 | 148 | 'x-data' => 'foobar', |
149 | 149 | ], 1); |
|
152 | 152 |
|
153 | 153 | it('can fail finding a nested element with content', function () { |
154 | 154 | $this->get('nesting') |
155 | | - ->assertElement(function (ElementAssert $element) { |
| 155 | + ->assertElement(function (AssertElement $element) { |
156 | 156 | $element->contains('div', [ |
157 | 157 | 'class' => 'foo', |
158 | 158 | ]); |
|
161 | 161 |
|
162 | 162 | it('can find a nested element with content functional', function () { |
163 | 163 | $this->get('nesting') |
164 | | - ->assertElement(function (ElementAssert $element) { |
165 | | - $element->findDiv(function (ElementAssert $element) { |
| 164 | + ->assertElement(function (AssertElement $element) { |
| 165 | + $element->findDiv(function (AssertElement $element) { |
166 | 166 | $element->is('div'); |
167 | 167 | }); |
168 | 168 | }); |
169 | 169 | }); |
170 | 170 |
|
171 | 171 | it('can find a nested element multiple levels', function () { |
172 | 172 | $this->get('nesting') |
173 | | - ->assertElement(function (ElementAssert $element) { |
174 | | - $element->findDiv(function (ElementAssert $element) { |
| 173 | + ->assertElement(function (AssertElement $element) { |
| 174 | + $element->findDiv(function (AssertElement $element) { |
175 | 175 | $element->is('div'); |
176 | | - $element->find('div', function (ElementAssert $element) { |
| 176 | + $element->find('div', function (AssertElement $element) { |
177 | 177 | $element->is('div'); |
178 | | - $element->findDiv(function (ElementAssert $element) { |
| 178 | + $element->findDiv(function (AssertElement $element) { |
179 | 179 | $element->is('div'); |
180 | 180 | }); |
181 | 181 | }); |
|
185 | 185 |
|
186 | 186 | it('can find a nested element multiple levels by query', function () { |
187 | 187 | $this->get('nesting') |
188 | | - ->assertElement(function (ElementAssert $element) { |
189 | | - $element->findDiv(function (ElementAssert $element) { |
| 188 | + ->assertElement(function (AssertElement $element) { |
| 189 | + $element->findDiv(function (AssertElement $element) { |
190 | 190 | $element->is('div'); |
191 | | - $element->find('.deep', function (ElementAssert $element) { |
| 191 | + $element->find('.deep', function (AssertElement $element) { |
192 | 192 | $element->is('div'); |
193 | | - $element->findSpan(function (ElementAssert $element) { |
| 193 | + $element->findSpan(function (AssertElement $element) { |
194 | 194 | $element->is('span'); |
195 | 195 | }); |
196 | 196 | }); |
|
200 | 200 |
|
201 | 201 | it('can find a nested element multiple levels by query and attributes', function () { |
202 | 202 | $this->get('nesting') |
203 | | - ->assertElement(function (ElementAssert $element) { |
204 | | - $element->findDiv(function (ElementAssert $element) { |
| 203 | + ->assertElement(function (AssertElement $element) { |
| 204 | + $element->findDiv(function (AssertElement $element) { |
205 | 205 | $element->is('div'); |
206 | 206 | $element->contains('.deep', [ |
207 | 207 | 'class' => 'deep', |
|
212 | 212 |
|
213 | 213 | it('can find a nested element and ensure doesnt contain', function () { |
214 | 214 | $this->get('nesting') |
215 | | - ->assertElement(function (ElementAssert $element) { |
216 | | - $element->findDiv(function (ElementAssert $element) { |
| 215 | + ->assertElement(function (AssertElement $element) { |
| 216 | + $element->findDiv(function (AssertElement $element) { |
217 | 217 | $element->is('div'); |
218 | 218 | $element->doesntContain('nav'); |
219 | 219 | }); |
|
222 | 222 |
|
223 | 223 | it('can fail finding an contained element', function () { |
224 | 224 | $this->get('nesting') |
225 | | - ->assertElement(function (ElementAssert $element) { |
226 | | - $element->findDiv(function (ElementAssert $element) { |
| 225 | + ->assertElement(function (AssertElement $element) { |
| 226 | + $element->findDiv(function (AssertElement $element) { |
227 | 227 | $element->doesntContain('div'); |
228 | 228 | }); |
229 | 229 | }); |
|
234 | 234 |
|
235 | 235 | it('can fail finding an contained element with query', function () { |
236 | 236 | $this->get('nesting') |
237 | | - ->assertElement(function (ElementAssert $element) { |
238 | | - $element->findDiv(function (ElementAssert $element) { |
| 237 | + ->assertElement(function (AssertElement $element) { |
| 238 | + $element->findDiv(function (AssertElement $element) { |
239 | 239 | $element->doesntContain('div.foobar'); |
240 | 240 | }); |
241 | 241 | }); |
|
247 | 247 | it('can match on livewire attributes', function () { |
248 | 248 | $this->get('livewire') |
249 | 249 | ->assertOk() |
250 | | - ->assertElement('[wire\:model="foo"]', function (ElementAssert $element) { |
| 250 | + ->assertElement('[wire\:model="foo"]', function (AssertElement $element) { |
251 | 251 | $element->is('input'); |
252 | 252 | }); |
253 | 253 | }); |
254 | 254 |
|
255 | 255 | it('can match has on livewire attributes', function () { |
256 | 256 | $this->get('livewire') |
257 | 257 | ->assertOk() |
258 | | - ->assertElement('input', function (ElementAssert $element) { |
| 258 | + ->assertElement('input', function (AssertElement $element) { |
259 | 259 | $element->has('wire:model', 'foo'); |
260 | 260 | }); |
261 | 261 | }); |
262 | 262 |
|
263 | 263 | it('can match on livewire with contains', function () { |
264 | 264 | $this->get('livewire') |
265 | 265 | ->assertOk() |
266 | | - ->assertElement(function (ElementAssert $element) { |
| 266 | + ->assertElement(function (AssertElement $element) { |
267 | 267 | $element->contains('input[wire\:model="foo"]'); |
268 | 268 | }); |
269 | 269 | }); |
270 | 270 |
|
271 | 271 | it('can match on livewire contains as attribute', function () { |
272 | 272 | $this->get('livewire') |
273 | 273 | ->assertOk() |
274 | | - ->assertElement(function (ElementAssert $element) { |
| 274 | + ->assertElement(function (AssertElement $element) { |
275 | 275 | $element->contains('input', [ |
276 | 276 | 'wire:model' => 'foo', |
277 | 277 | ]); |
|
281 | 281 | it('can run the example from the readme', function () { |
282 | 282 | $this->get(route('about')) |
283 | 283 | ->assertOk() |
284 | | - ->assertElement('nav > ul', function (ElementAssert $ul) { |
| 284 | + ->assertElement('nav > ul', function (AssertElement $ul) { |
285 | 285 | $ul->contains('li', [ |
286 | 286 | 'class' => 'active', |
287 | 287 | 'text' => 'About', |
|
0 commit comments