2014-04-29 1 views
0

RaspberryPi에서 실행할 코드를 작성 중입니다. Wiring-Pi 노드 모듈을 사용하고 있습니다. 나는 두 가지 문제node.js 모듈을 모의 또는 스텁하는 방법

1) 배선-PI는 x86 플랫폼에 구축되지 않습니다

다른 무리와 함께 주위를 연주 한 후,

그래서 라즈베리 파이에 구축되지 않습니다 2) 노드 자스민 아이디어, 나는 x86 플랫폼에서 Wiring-Pi 모듈을 조롱하거나 스텁하는 것이 가장 좋은지 궁금합니다. 따라서 테스트를 실행할 수 있습니다. 물론

, 내 문제는 내가 테스트 해요 파일이 내가 설정 할 수있는 스펙 파일을 getters.js 파일이되지 않도록 방법이 있나요 (가)

// getters.js 
    var wpi = require('wiring-pi'); 

    // getters.spec.js 
    var get = require('../lib/getters.js'); 

을 한 Statment 필요 포함입니다 배선 -pi 모듈을로드 하시겠습니까?

+0

Raspi atm에 노드가 없습니다. 'console.log ('이 플랫폼은'+ process.platform '입니다.);이 리턴합니까? 희망 적으로 그것을 사용하여 조건부로'wpi'를 설정할 수 있습니다. 저는 조롱을 위해 [sinonjs] (http://sinonjs.org/)와 행운을 빕니다. – PeterVC

+0

'require ('os'). arch()'와'require ('os') .platform()'도 확인하십시오. – PeterVC

+0

방금 ​​설치 한 노드 및 배선 -pi. 'var wpi = require ('os')처럼 보입니다. arch() === 'arm'? require ('wiring-pi') : {};'좋은 시작이 될 것입니다. – PeterVC

답변

1

당신은 배선 - 파이 모듈의 로딩을 제어하기 위해 이것을 사용할 수 있습니다 :

var wpi = require('os').arch() === 'arm' ? require('wiring-pi') : {}; 

재스민, 컴파일 설치하고 파이에서 실행됩니다. 어떤 오류가 발생합니까?

+0

답장이 지연되어 죄송합니다. SD 카드가 손상되어 다시 작성해야했습니다. jasmine-node를 설치하려고 할 때 발생하는 오류는 불행히도 도움이되지 않습니다. 단지 '레지스트리에서 가져 오지 못했습니다 : jasmine-node'라고 말하면서 다른 모든 모듈은 잘 설치됩니다. – pedalpete

+0

잘하면 http://stackoverflow.com/questions/12913141/installing-from-npm-fails가 도움이 될 수 있습니다. – PeterVC

관련 문제