2013-08-01 2 views
0

내 모델을 테스트하기 위해 laravel 4의 jeffrey 방식으로 laravel-test-helper 패키지를 사용하고 있습니다.

public function testMyModel() 
{ 

    $obj = Factory::create('Modelname'); 
    Assert::equals(1,$obj->count()); 
} 

을하고 나는 $ softDelete 변수없이 테스트를 실행할 때, 그것을 잘 작동합니다 : 내 모델에서

protected $softDelete = true; 

를 사용하는 경우, 다음과 같은 주장이 실패합니다. 뭐가 잘못 되었나요?

/var/www/project/vendor/way/laravel-test-helpers/src/Way/Tests/TestFacade.php:41 
/var/www/project/vendor/way/laravel-test-helpers/src/Way/Tests/TestFacade.php:25 
/var/www/project/vendor/way/laravel-test-helpers/src/Way/Tests/TestFacade.php:55 
/var/www/project/app/tests/models/ModelTest.php:13 
/var/www/project/app/tests/models/ModelTest.php:13 

답변

0

Factory::create()이 모델 확률 변수를 생성합니다 : 그것은 어떤 도움 인 경우 이것은 phpunit을 명령의 스택 트레이스이다. 'softDelete'를 사용하고 있기 때문에 테이블에 'deleted_at'이라는 필드가 있습니다. 그래서 공장이 데이터를 가하고 있으며, Laravel는 기록이 때문에, ->count() 반환 명시 적으로 다음과 같이 null에 deleted_at 공장 출하시 기본값으로 설정해야

0 삭제 생각 :

$obj = Factory::create('Modelname', array('deleted_at' => null)); 
+0

덕분에 .. deleted_at 열이 내 마음을 교차시키지 않았습니다. – jayant