로그인이 필요하고 zend_acl과 zend_auth를 사용하는 애플리케이션이 있습니다.Zend Auth와 Zend ACL을 이용한 PHP 유닛 테스팅
사전 발송 중에 ACL에 대한 모든 규칙을 만드는 ACL 플러그인이 있습니다. 또한 Auth 플러그인을 사용하여 로그인했는지 여부를 확인하고 만약 그렇다면 ACL에 따라 요청 된 리소스에 액세스 할 수 있는지 확인하십시오.
응용 프로그램이 불가능하거나, 내가 뭔가를 분명 누락 오히려 더 가능성이있을 것으로 보인다.
단위 테스트에 로그인 한 경우 ACL은 생성되는 로그인 뒤에 완전히 때문이다.
내 단위 테스트 설정 방법에서는 zend_auth 인스턴스를 반환하는 성공적인 로그인을 시뮬레이션합니다. 통과 한 테스트는이 로그인에 성공했음을 나타냅니다.
그러나 테스트를 통해 다른 위치로 파견을 시도하거나 로그인 한 사용자가 주어진 리소스에 액세스 할 수 있는지 평가하면 여전히 플러그인에 의해 로그인되지 않은 상태이므로 거부됩니다. 이것이 왜 있는지, 누군가 조언 할 수 있습니까?
예를 들어이 통과 :이 플러그인에 의해 거부 것 같은
public function testLoggedIn()
{
$this->assertTrue(Zend_Auth::getInstance()->hasIdentity());
}
이 실패
public function testUserAccess()
{
$this->dispatch('/home');
$this->assertResponseCode(200);
$this->assertQueryContentContains('#nav_side');
$this->resetRequest()
->resetResponse();
}
이를, 난 여전히 플러그인으로 로그인 페이지로 다시 리디렉션 것으로 보인다 발견 사용자가 로그인했는지 모르 십니다.
도움을 주시면 감사하겠습니다.
예 - 문제가있는 것으로 보입니다. –