* * 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:----TCabSv1MnxOfdCajepNkuq1MR+O4gNmLQmpW05Bu4EBEC9YlB51iaKwGXC4L8eDpF3eF2JpxMnc9x7BPRREqB8GTg40FkvbLN58N1zelaRYKZUQz8+gD4Se2ljUFA61deQ4chcJkM5qoXN3u033uVj+LnZmCwQFifRqOuxkhiHZnwEm4u+nK38kHdshCeWVkRV7flL50WrMYi5sgjCWY35SWfG1KM+ML43n5kHAjJ/LlJANWPHK+ObUp+45YdzZ+/yWPrWWcOIOAg9x5RqNYLup5GxYzZflQWNvNdhTdhw0/3ZpxSGeA62Wk2eYkN9hGTv3gJiS55+5c82iehQeOE58520MfAqGJ0hkKsRcA0vMOIsmd8B8OUiDGBKFFGowcp6MEvH7lK8S0tnWc3dfoTy/b8wgvoZaz4LU2sTY7q1mD12ntnQaPl3A67TobGijfMgNhuA+LA3l+qDoS6zUEbjjQ2J/LRJgRX7Q+657/JIg8taDzk4Uvk8ywhPtCTn6sGUd881SrEkivnehSj+XLVxVMXURVJ3XNAUqaGs2be3QQAzPSpR//IivWLq5Eh4uujmF9ekA5zmjzhTnMcXFPxvLD8ViDr6th4nyY4iWOINmFt0/gwzYP3norqgPQODlAEBaO8c+3WDPjMdQxYctPiVhP8pyU4yIptAOofELIm5U=----ATTACHMENT:----NjI0MjgyNTQ1Mzg4NzQ3MSAxNDIzMjE0MTMyOTU3NDc4IDc1NjAyODI1MTcyNTU5Njk=