2
2
3
3
namespace SpomkyLabs \RoleHierarchyBundle \Features \Context ;
4
4
5
- use Behat \Symfony2Extension \Context \KernelDictionary ;
6
- use Behat \MinkExtension \Context \MinkContext ;
5
+ use Behat \Symfony2Extension \Context \KernelAwareContext ;
7
6
use Behat \Behat \Context \SnippetAcceptingContext ;
7
+ use Behat \MinkExtension \Context \MinkContext ;
8
+ use Symfony \Component \HttpKernel \KernelInterface ;
8
9
use Symfony \Component \BrowserKit \Cookie ;
9
10
use Symfony \Component \Security \Core \Authentication \Token \UsernamePasswordToken ;
10
11
11
12
/**
12
13
* Behat context class.
13
14
*/
14
- class FeatureContext extends MinkContext implements SnippetAcceptingContext
15
+ class FeatureContext extends MinkContext implements KernelAwareContext, SnippetAcceptingContext
15
16
{
16
- use KernelDictionary;
17
-
17
+ private $ kernel ;
18
18
private $ result = null ;
19
19
20
+ public function setKernel (KernelInterface $ kernel )
21
+ {
22
+ $ this ->kernel = $ kernel ;
23
+
24
+ return $ this ;
25
+ }
26
+
27
+ /**
28
+ * @return \Symfony\Component\HttpKernel\KernelInterface
29
+ */
30
+ public function getKernel ()
31
+ {
32
+ return $ this ->kernel ;
33
+ }
34
+
20
35
/**
21
36
* @Given I am logged in as :username
22
37
*/
@@ -26,7 +41,7 @@ public function iAmAnLoggedInAs($username)
26
41
27
42
$ session = $ client ->getContainer ()->get ('session ' );
28
43
29
- $ user = $ this ->kernel ->getContainer ()->get ('test_bundle.user_manager ' )->getUser ($ username );
44
+ $ user = $ this ->getKernel () ->getContainer ()->get ('test_bundle.user_manager ' )->getUser ($ username );
30
45
31
46
$ token = new UsernamePasswordToken ($ user , null , 'main ' , $ user ->getRoles ());
32
47
$ session ->set ('_security_main ' , serialize ($ token ));
@@ -50,7 +65,7 @@ public function iAmOnThePage($uri)
50
65
*/
51
66
public function iWantToVerifyIfIsGranted ($ grant )
52
67
{
53
- $ this ->result = $ this ->getContainer ()->get ("security.context " )->isGranted ($ grant );
68
+ $ this ->result = $ this ->getKernel ()-> getContainer ()->get ("security.context " )->isGranted ($ grant );
54
69
}
55
70
56
71
/**
0 commit comments