4
4
5
5
namespace Codeception \Module \Symfony ;
6
6
7
- use PHPUnit \Framework \Constraint \LogicalAnd ;
7
+ use PHPUnit \Framework \Constraint \Constraint ;
8
8
use PHPUnit \Framework \Constraint \LogicalNot ;
9
- use Symfony \Component \DomCrawler \Crawler ;
10
- use Symfony \Component \DomCrawler \Test \Constraint \CrawlerAnySelectorTextContains ;
11
- use Symfony \Component \DomCrawler \Test \Constraint \CrawlerAnySelectorTextSame ;
12
9
use Symfony \Component \DomCrawler \Test \Constraint \CrawlerSelectorAttributeValueSame ;
13
- use Symfony \Component \DomCrawler \Test \Constraint \CrawlerSelectorCount ;
14
10
use Symfony \Component \DomCrawler \Test \Constraint \CrawlerSelectorExists ;
15
11
use Symfony \Component \DomCrawler \Test \Constraint \CrawlerSelectorTextContains ;
16
12
use Symfony \Component \DomCrawler \Test \Constraint \CrawlerSelectorTextSame ;
17
13
18
14
trait DomCrawlerAssertionsTrait
19
15
{
20
- /**
21
- * Asserts that any element matching the given selector does contain the expected text.
22
- */
23
- public function assertAnySelectorTextContains (string $ selector , string $ text , string $ message = '' ): void
24
- {
25
- $ this ->assertThat ($ this ->getCrawler (), LogicalAnd::fromConstraints (
26
- new CrawlerSelectorExists ($ selector ),
27
- new CrawlerAnySelectorTextContains ($ selector , $ text )
28
- ), $ message );
29
- }
30
-
31
- /**
32
- * Asserts that any element matching the given selector does not contain the expected text.
33
- */
34
- public function assertAnySelectorTextNotContains (string $ selector , string $ text , string $ message = '' ): void
35
- {
36
- $ this ->assertThat ($ this ->getCrawler (), LogicalAnd::fromConstraints (
37
- new CrawlerSelectorExists ($ selector ),
38
- new LogicalNot (new CrawlerAnySelectorTextContains ($ selector , $ text ))
39
- ), $ message );
40
- }
41
-
42
- /**
43
- * Asserts that any element matching the given selector does equal the expected text.
44
- */
45
- public function assertAnySelectorTextSame (string $ selector , string $ text , string $ message = '' ): void
46
- {
47
- $ this ->assertThat ($ this ->getCrawler (), LogicalAnd::fromConstraints (
48
- new CrawlerSelectorExists ($ selector ),
49
- new CrawlerAnySelectorTextSame ($ selector , $ text )
50
- ), $ message );
51
- }
52
-
53
16
/**
54
17
* Asserts that the checkbox with the given name is checked.
55
18
*/
56
19
public function assertCheckboxChecked (string $ fieldName , string $ message = '' ): void
57
20
{
58
- $ this ->assertThat (
59
- $ this ->getCrawler (),
60
- new CrawlerSelectorExists ("input[name= \"$ fieldName \"]:checked " ),
61
- $ message
62
- );
21
+ $ this ->assertThatCrawler (new CrawlerSelectorExists ("input[name= \"$ fieldName \"]:checked " ), $ message );
63
22
}
64
23
65
24
/**
66
25
* Asserts that the checkbox with the given name is not checked.
67
26
*/
68
27
public function assertCheckboxNotChecked (string $ fieldName , string $ message = '' ): void
69
28
{
70
- $ this ->assertThat (
71
- $ this ->getCrawler (),
72
- new LogicalNot (new CrawlerSelectorExists ("input[name= \"$ fieldName \"]:checked " )),
73
- $ message
74
- );
29
+ $ this ->assertThatCrawler (new LogicalNot (
30
+ new CrawlerSelectorExists ("input[name= \"$ fieldName \"]:checked " )
31
+ ), $ message );
75
32
}
76
33
77
34
/**
78
35
* Asserts that value of the form input with the given name does not equal the expected value.
79
36
*/
80
37
public function assertInputValueNotSame (string $ fieldName , string $ expectedValue , string $ message = '' ): void
81
38
{
82
- $ this ->assertThat ( $ this -> getCrawler ( ), LogicalAnd:: fromConstraints (
83
- new CrawlerSelectorExists ( " input[name= \" $ fieldName \" ] " ),
84
- new LogicalNot ( new CrawlerSelectorAttributeValueSame ("input[name= \"$ fieldName \"] " , 'value ' , $ expectedValue) )
39
+ $ this ->assertThatCrawler ( new CrawlerSelectorExists ( " input[name= \" $ fieldName \" ] " ), $ message );
40
+ $ this -> assertThatCrawler ( new LogicalNot (
41
+ new CrawlerSelectorAttributeValueSame ("input[name= \"$ fieldName \"] " , 'value ' , $ expectedValue )
85
42
), $ message );
86
43
}
87
44
@@ -90,10 +47,11 @@ public function assertInputValueNotSame(string $fieldName, string $expectedValue
90
47
*/
91
48
public function assertInputValueSame (string $ fieldName , string $ expectedValue , string $ message = '' ): void
92
49
{
93
- $ this ->assertThat ($ this ->getCrawler (), LogicalAnd::fromConstraints (
94
- new CrawlerSelectorExists ("input[name= \"$ fieldName \"] " ),
95
- new CrawlerSelectorAttributeValueSame ("input[name= \"$ fieldName \"] " , 'value ' , $ expectedValue )
96
- ), $ message );
50
+ $ this ->assertThatCrawler (new CrawlerSelectorExists ("input[name= \"$ fieldName \"] " ), $ message );
51
+ $ this ->assertThatCrawler (
52
+ new CrawlerSelectorAttributeValueSame ("input[name= \"$ fieldName \"] " , 'value ' , $ expectedValue ),
53
+ $ message
54
+ );
97
55
}
98
56
99
57
/**
@@ -112,65 +70,51 @@ public function assertPageTitleSame(string $expectedTitle, string $message = '')
112
70
$ this ->assertSelectorTextSame ('title ' , $ expectedTitle , $ message );
113
71
}
114
72
115
- /**
116
- * Asserts that the expected number of selector elements are in the response.
117
- */
118
- public function assertSelectorCount (int $ expectedCount , string $ selector , string $ message = '' ): void
119
- {
120
- $ this ->assertThat ($ this ->getCrawler (), new CrawlerSelectorCount ($ expectedCount , $ selector ), $ message );
121
- }
122
-
123
73
/**
124
74
* Asserts that the given selector does match at least one element in the response.
125
75
*/
126
76
public function assertSelectorExists (string $ selector , string $ message = '' ): void
127
77
{
128
- $ this ->assertThat ( $ this -> getCrawler (), new CrawlerSelectorExists ($ selector ), $ message );
78
+ $ this ->assertThatCrawler ( new CrawlerSelectorExists ($ selector ), $ message );
129
79
}
130
80
131
81
/**
132
82
* Asserts that the given selector does not match at least one element in the response.
133
83
*/
134
84
public function assertSelectorNotExists (string $ selector , string $ message = '' ): void
135
85
{
136
- $ this ->assertThat ( $ this -> getCrawler (), new LogicalNot (new CrawlerSelectorExists ($ selector )), $ message );
86
+ $ this ->assertThatCrawler ( new LogicalNot (new CrawlerSelectorExists ($ selector )), $ message );
137
87
}
138
88
139
89
/**
140
90
* Asserts that the first element matching the given selector does contain the expected text.
141
91
*/
142
92
public function assertSelectorTextContains (string $ selector , string $ text , string $ message = '' ): void
143
93
{
144
- $ this ->assertThat ($ this ->getCrawler (), LogicalAnd::fromConstraints (
145
- new CrawlerSelectorExists ($ selector ),
146
- new CrawlerSelectorTextContains ($ selector , $ text )
147
- ), $ message );
94
+ $ this ->assertThatCrawler (new CrawlerSelectorExists ($ selector ), $ message );
95
+ $ this ->assertThatCrawler (new CrawlerSelectorTextContains ($ selector , $ text ), $ message );
148
96
}
149
97
150
98
/**
151
99
* Asserts that the first element matching the given selector does not contain the expected text.
152
100
*/
153
101
public function assertSelectorTextNotContains (string $ selector , string $ text , string $ message = '' ): void
154
102
{
155
- $ this ->assertThat ($ this ->getCrawler (), LogicalAnd::fromConstraints (
156
- new CrawlerSelectorExists ($ selector ),
157
- new LogicalNot (new CrawlerSelectorTextContains ($ selector , $ text ))
158
- ), $ message );
103
+ $ this ->assertThatCrawler (new CrawlerSelectorExists ($ selector ), $ message );
104
+ $ this ->assertThatCrawler (new LogicalNot (new CrawlerSelectorTextContains ($ selector , $ text )), $ message );
159
105
}
160
106
161
107
/**
162
108
* Asserts that the contents of the first element matching the given selector does equal the expected text.
163
109
*/
164
110
public function assertSelectorTextSame (string $ selector , string $ text , string $ message = '' ): void
165
111
{
166
- $ this ->assertThat ($ this ->getCrawler (), LogicalAnd::fromConstraints (
167
- new CrawlerSelectorExists ($ selector ),
168
- new CrawlerSelectorTextSame ($ selector , $ text )
169
- ), $ message );
112
+ $ this ->assertThatCrawler (new CrawlerSelectorExists ($ selector ), $ message );
113
+ $ this ->assertThatCrawler (new CrawlerSelectorTextSame ($ selector , $ text ), $ message );
170
114
}
171
115
172
- protected function getCrawler ( ): Crawler
116
+ protected function assertThatCrawler ( Constraint $ constraint , string $ message ): void
173
117
{
174
- return $ this ->client ->getCrawler ();
118
+ $ this ->assertThat ( $ this -> client ->getCrawler (), $ constraint , $ message );
175
119
}
176
120
}
0 commit comments