2011-10-04 4 views
0

require 'xsd/qname' 을 가지고있는 파일을 필요로하는 루비 파일이 있고 모든 파일이 잘 작동하지만 테스트 단위로 테스트 할 때이 오류가 계속 발생합니다.테스트 유닛이 xsd 파일을로드하지 못함

 LoadError: no such file to load -- xsd/qname 

한동안 해결책을 찾지 못했습니다. (나는 믿을 수 없을만큼 간단 할 수 있도록 새로운 유닛을 테스트한다.)

EDIT

코드가 레일 환경이 아니라 보석에 있다는 사실과 관련이 있다고 생각합니다. 따라서이 테스트에서는 레일을로드하는 코드가로드됩니다.

이상한 부분은 irb로 보석에 들어가면 'xsd/qname'을 요구할 수 있지만 'soap/rpc/driver'

을 얻는 또 다른 오류입니다.

답변

0

나는이 문제가 1.9 버전의 루비 1.8에 내장 된 파일을 사용하고 있다고 생각한다. soap4r를 사용하여 내 문제가 해결되었습니다. https://github.com/spox/soap4r-spox

참고로 당신이 방금 구출하려는 경우 오류가이 작업을 수행 :

begin 
    require 'xsd/qname' 
rescue LoadError 
    puts "xsd/qname not found...." 
    exit 
end 
1

을 얻고 있었다 또 다른 오류가 'soap/rpc/driver'이 필요 없습니다. 그것은 당신의 프로젝트를 배치하는 방법을 보지 않고 최선의 해결책을 조언하지만, 함께 필요로 문을 대체하려고하기는 어렵습니다 :

require File.dirname(Rails.root + '/xsd/qname') 
당신은 그에 따라 해당 파일이 프로젝트 내에 존재하는 조정해야 할 수도 있습니다

.

+0

나는 qname를를 요구하고 파일을 건드릴 수 없어,하지만 난 질문을 업데이트했습니다. – cbron

+0

Nevermind, 수정 프로그램을 발견했습니다. 그래도 도와 ​​줘서 고마워. – cbron