4
4
5
5
namespace App \Tests \Functional ;
6
6
7
+ use App \Event \UserRegisteredEvent ;
7
8
use App \Tests \FunctionalTester ;
8
- use Sensio \Bundle \FrameworkExtraBundle \EventListener \SecurityListener ;
9
9
use Symfony \Bundle \FrameworkBundle \DataCollector \RouterDataCollector ;
10
+ use Symfony \Component \Console \ConsoleEvents ;
10
11
use Symfony \Component \Console \EventListener \ErrorListener ;
12
+ use Symfony \Component \HttpKernel \EventListener \LocaleListener ;
13
+ use Symfony \Component \HttpKernel \EventListener \RouterListener ;
14
+ use Symfony \Component \HttpKernel \KernelEvents ;
11
15
12
16
final class EventsCest
13
17
{
18
+ /**
19
+ * @deprecated in favor of dontSeeEventListenerIsCalled
20
+ */
14
21
public function dontSeeEventTriggered (FunctionalTester $ I )
15
22
{
16
23
$ I ->amOnPage ('/ ' );
@@ -25,6 +32,9 @@ public function dontSeeEventListenerIsCalled(FunctionalTester $I)
25
32
$ I ->dontSeeEventListenerIsCalled (ErrorListener::class);
26
33
$ I ->dontSeeEventListenerIsCalled (new ErrorListener ());
27
34
$ I ->dontSeeEventListenerIsCalled ([ErrorListener::class, ErrorListener::class]);
35
+ // with events
36
+ $ I ->dontSeeEventListenerIsCalled (RouterListener::class, KernelEvents::EXCEPTION );
37
+ $ I ->dontSeeEventListenerIsCalled (RouterListener::class, [KernelEvents::RESPONSE , KernelEvents::EXCEPTION ]);
28
38
}
29
39
30
40
public function dontSeeOrphanEvent (FunctionalTester $ I )
@@ -35,34 +45,62 @@ public function dontSeeOrphanEvent(FunctionalTester $I)
35
45
'password ' => '123456 ' ,
36
46
'_remember_me ' => false
37
47
]);
38
- $ I ->dontseeOrphanEvent ();
48
+ $ I ->dontSeeOrphanEvent ();
39
49
}
40
50
51
+ public function dontSeeEvent (FunctionalTester $ I )
52
+ {
53
+ $ I ->markTestSkipped ();
54
+ $ I ->amOnPage ('/ ' );
55
+ $ I ->dontSeeEvent (KernelEvents::EXCEPTION );
56
+ $ I ->dontSeeEvent ([new UserRegisteredEvent (), ConsoleEvents::COMMAND ]);
57
+ }
58
+
59
+ /**
60
+ * @deprecated in favor of seeEventListenerIsCalled
61
+ */
41
62
public function seeEventTriggered (FunctionalTester $ I )
42
63
{
43
64
$ I ->amOnPage ('/ ' );
44
- $ I ->seeEventTriggered (SecurityListener ::class);
65
+ $ I ->seeEventTriggered (RouterListener ::class);
45
66
$ I ->seeEventTriggered (new RouterDataCollector ());
46
- $ I ->seeEventTriggered ([SecurityListener ::class, RouterDataCollector::class]);
67
+ $ I ->seeEventTriggered ([RouterListener ::class, RouterDataCollector::class]);
47
68
}
48
69
49
70
public function seeEventListenerIsCalled (FunctionalTester $ I )
50
71
{
51
72
$ I ->amOnPage ('/ ' );
52
- $ I ->seeEventListenerIsCalled (SecurityListener ::class);
73
+ $ I ->seeEventListenerIsCalled (RouterListener ::class);
53
74
$ I ->seeEventListenerIsCalled (new RouterDataCollector ());
54
- $ I ->seeEventListenerIsCalled ([SecurityListener::class, RouterDataCollector::class]);
75
+ $ I ->seeEventListenerIsCalled ([RouterListener::class, RouterDataCollector::class]);
76
+ // with events
77
+ $ I ->seeEventListenerIsCalled (RouterListener::class, KernelEvents::REQUEST );
78
+ $ I ->seeEventListenerIsCalled (LocaleListener::class, [KernelEvents::REQUEST , KernelEvents::FINISH_REQUEST ]);
55
79
}
56
80
57
81
public function seeOrphanEvent (FunctionalTester $ I )
58
82
{
59
- $ I ->markTestIncomplete ('To do: use a new event for this assertion ' );
60
83
$ I ->amOnPage ('/register ' );
84
+ $ I ->stopFollowingRedirects ();
85
+ $ I ->submitSymfonyForm ('registration_form ' , [
86
+ '[email] ' => 'jane_doe@gmail.com ' ,
87
+ '[plainPassword] ' => '123456 ' ,
88
+ '[agreeTerms] ' => true
89
+ ]);
90
+ $ I ->seeOrphanEvent (UserRegisteredEvent::class);
91
+ }
92
+
93
+ public function seeEvent (FunctionalTester $ I )
94
+ {
95
+ $ I ->markTestSkipped ();
96
+ $ I ->amOnPage ('/register ' );
97
+ $ I ->stopFollowingRedirects ();
61
98
$ I ->submitSymfonyForm ('registration_form ' , [
62
99
'[email] ' => 'jane_doe@gmail.com ' ,
63
100
'[plainPassword] ' => '123456 ' ,
64
101
'[agreeTerms] ' => true
65
102
]);
66
- $ I ->seeOrphanEvent ('security.authentication.success ' );
103
+ $ I ->seeEvent (UserRegisteredEvent::class);
104
+ $ I ->seeEvent (KernelEvents::REQUEST , KernelEvents::FINISH_REQUEST );
67
105
}
68
106
}
0 commit comments