예제 #1
0
 /**
  * @test
  */
 public function routeMatchesIfRequestMethodIsAccepted()
 {
     $this->route->setUriPattern('');
     $this->route->setHttpMethods(array('POST', 'PUT'));
     $mockHttpRequest = $this->getMockBuilder('TYPO3\\Flow\\Http\\Request')->disableOriginalConstructor()->getMock();
     $mockUri = $this->getMockBuilder('TYPO3\\Flow\\Http\\Uri')->disableOriginalConstructor()->getMock();
     $mockUri->expects($this->any())->method('getPath')->will($this->returnValue('/'));
     $mockHttpRequest->expects($this->any())->method('getUri')->will($this->returnValue($mockUri));
     $mockBaseUri = $this->getMockBuilder('TYPO3\\Flow\\Http\\Uri')->disableOriginalConstructor()->getMock();
     $mockBaseUri->expects($this->any())->method('getPath')->will($this->returnValue('/'));
     $mockHttpRequest->expects($this->any())->method('getBaseUri')->will($this->returnValue($mockBaseUri));
     $mockHttpRequest->expects($this->atLeastOnce())->method('getMethod')->will($this->returnValue('PUT'));
     $this->assertTrue($this->route->matches($mockHttpRequest), 'Route should match PUT requests if POST and PUT requests are accepted.');
 }