2009-09-03 2 views
1

Drupal 6.13에서 SimpleTest 모듈 버전 6.x-2.8을 사용하고 있습니다. 나는 커스텀 모듈을 썼다. 그러나 SimpleTest는 테이블에 무언가를 삽입하거나 SimpleTest에서 쿼리하려고 할 때마다 예외 메시지를 받기 때문에 내 사용자 지정 모듈과 관련된 테이블의 복사본을 만드는 것처럼 보이지 않습니다. 정의) (Drupal의 SimpleTest가 사용자 정의 테이블의 복사본을 생성하지 않음

가 hook_schema있다 simpletest692319new_table INTO INSERT (...) : 표 존재하지 않는 'db_name.simpletest692319new_table'쿼리 :

모든 삽입 쿼리

는 SimpleTest 결과 페이지에서이 같은 무언가로 결과 모듈에 대한 내 .install 파일에서. SimpleTest가 내 테이블을 인식하고 그 복사본을 생성하기 위해 필요한 다른 것이 있다면 누구라도 알고 있습니까?

감사합니다. SimpleTest의 CCK의 구현을 보면

+2

는 사용자 정의 모듈을 사용 가능하게 DrupalWebTestCase을 확장 및 설정에 모듈을 추가 할 필요가있다 setUP 함수를 사용합니까? 같은 것 : function setUp() { parent :: setUp ('my_module_name'); } – jhedstrom

+0

또한 이것에 대해서는 확실하지 않지만 .install 파일보다는 .module 파일에 있어야합니다. –

+0

jhedstrom : 응답 해 주셔서 감사합니다. 내가 가진 함수 setUp() {parent :: setUp(); } (매개 변수 없음) 따라서 매개 변수로 모듈 이름을 전달하려고 시도했지만 여전히 동일한 rsults를 얻고 있습니다. Jeremy : 훅 스키마는 .install 파일에 있어야합니다. – Pamela

답변

0

당신이 필요 보이는 같은 :

function setUp() { 
    $args = func_get_args(); 
    $modules = array_merge(array('my', 'list', 'of', 'modules'), $args); 
    call_user_func_array(array('parent','setUp'), $modules); 
    } 
2

문제는

class MyTest extends DrupalWebTestCase { 
    function setUp() { 
     parent::setUp('mymodule'); 
    } 
} 
+0

이것은 이상합니다. 솔루션은 작동하지만 믿을 수없는 것은 모듈 스키마가 설치되지 않아도 모듈 특정 기능이 발견되어 실행될 수 있다는 것입니다. 따라서 일반적으로 모듈이 완벽하게 작동한다고 가정합니다. – berliner

관련 문제