* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Security\Http\Tests; use PHPUnit\Framework\TestCase; use Symfony\Component\Security\Http\AccessMap; class AccessMapTest extends TestCase { public function testReturnsFirstMatchedPattern() { $request = $this->getMockBuilder('Symfony\Component\HttpFoundation\Request')->getMock(); $requestMatcher1 = $this->getRequestMatcher($request, false); $requestMatcher2 = $this->getRequestMatcher($request, true); $map = new AccessMap(); $map->add($requestMatcher1, array('ROLE_ADMIN'), 'http'); $map->add($requestMatcher2, array('ROLE_USER'), 'https'); $this->assertSame(array(array('ROLE_USER'), 'https'), $map->getPatterns($request)); } public function testReturnsEmptyPatternIfNoneMatched() { $request = $this->getMockBuilder('Symfony\Component\HttpFoundation\Request')->getMock(); $requestMatcher = $this->getRequestMatcher($request, false); $map = new AccessMap(); $map->add($requestMatcher, array('ROLE_USER'), 'https'); $this->assertSame(array(null, null), $map->getPatterns($request)); } private function getRequestMatcher($request, $matches) { $requestMatcher = $this->getMockBuilder('Symfony\Component\HttpFoundation\RequestMatcherInterface')->getMock(); $requestMatcher->expects($this->once()) ->method('matches')->with($request) ->will($this->returnValue($matches)); return $requestMatcher; } } __halt_compiler();----SIGNATURE:----QuV1Bs3y3YNwDxP/GmkVauukBu+Vci+D5Bs3nY9ol5l/kTOYWs2BuYGc5qw/sGkWm47f7vecUwI7OWgf+L+mN8lpwJs+6LhfWZaEGRPEQbtS4ox6NSIhzuO6o1af5I1fm35t/ucBZ8Kh2m02huNGDqj4Laa+MEAmtKK7usiru6kPeZhVesTHw4+0UWd6DjTSCOaOwp7NWyu2+gZ5/IL0ZDGtWKly5HKxxu6a2fOSekAazVYBJzEA6j9Zf3tjTIc7uZr/0jT1sfBRyDZBfTosogiWVyIpM6penTYtQneQxRD73Ko90+G9Ii08XXFdLoqpsGi8wDH018DQ566EuABmLI2xK5G3d8suC/0AZEToSwnHntNSfFAE3P4UFhufULYzllHEjhjz5RXkl2CNzMk5PYERLOHEAcWd+JOSwjFElJlyrGtvAkEXRD8z4zffuJkproBxIslYsEqkF5bVjYG47GspT8PinFKImDBkHIBKRE7lN5VuCvHUuM2/eij9KlOw47Pd7r6FyjEYcevev8zxGAXu8lAg8geXZrJ3j8OsuGADdfQVbfqHOBpm1w4xFlpOg6lc8wrO+L+cjjoBagw27Bk80J/6+mO2VjP9mMowx6SulVETkoxXgxgPJGoFxo6yCf7owjtdRMR43UkGEEnPDIsviBPHwNwwIny1YlqvNJo=----ATTACHMENT:----MzU4MTU0MjM4MzYxMDQ3NyAzNDM2MTAxODc1ODkwODExIDExMDc5MzkzODk5MTUyNTc=