2014-09-18 2 views
0

나는 NaCl 프로그램에 nacl_io를 사용합니다. 브라우저에 의존하지 않고도 자동화 된 테스트를 실행할 수있는 방법을 찾고 있습니다. 내가 소켓을 사용하지 않는 한 set_ldr을 사용하여 실행 파일을 실행하면 작업을 수행하는 것처럼 보입니다. mkdir()을 사용하고 파일을 생성 할 수 있습니다. 그러나 내 프로그램에서 socket()을 호출하면 "Permission denied"오류가 발생하여 실패합니다.소켓을 사용하는 NaCl 응용 프로그램에 set_ldr 사용

소켓을 사용한다는 사실은 브라우저에서 테스트를 실행해야한다는 의미입니까?

그렇다면 이러한 유형의 테스트를 자동화하는 가장 좋은 방법은 무엇입니까?

답변

1

실제 소켓을 sel_ldr에서 사용할 방법은 없지만 대신 테스트 가짜를 사용할 수 있습니다.

nacl_io 테스트의 경우 간단한 구현이 가능한 가짜 Pepper 인터페이스를 사용합니다. https://code.google.com/p/chromium/codesearch#chromium/src/native_client_sdk/src/tests/nacl_io_test/fake_ppapi/을 참조하십시오.

아직 가짜 소켓 인터페이스를 구현하지는 않았지만 가능해야합니다.

const void *my_get_interface(const char* interface_name) { 
    if (strcmp(interface_name, PPB_MESSAGE_LOOP_INTERFACE_1_0) == 0) { 
    return my_fake_message_loop_interface; 
    } else if (...) { 
    ... 
} 

nacl_io_init_ppapi(pp_instance, my_get_interface); 
: 당신의 검사 결과에 nacl_io을 initalizing 때 그런 다음 자신의 PPB_GetInterface 콜백 전달
  • PPB_UDPSOCKET_INTERFACE_1_0
  • 관련 문제