2013-09-22 2 views
6

rspec을 사용하여 실행하려고하는 코드가 있습니다.레일 4 - 구문 오류, 예상치 못한 tIDENTIFIER, end-of-input을 예상 함

require 'spec_helper' 

    describe "User" do 
     before { @user = User.new(name: "Example User", email: "[email protected]", password: "foobar", password_confirmation: "foobar") } 
     subject { @user } 

     it { should respond_to(:name)} 
    end 

나는 지금은 새 파일에 테스트를 다시 입력하고 및 오류없이 실행 다음과 같은 오류

c:\Sites\sample_app>rspec spec/models/user_spec.rb 
C:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0.0/gems/rspec-core-2.13.1/lib/rspec 
/core/configuration.rb:819:in `load': c:/Sites/sample_app/spec/models/user_spec. 
rb:1: syntax error, unexpected tIDENTIFIER, expecting end-of-input (SyntaxError) 
before { @user...er' 

를 얻을. 나는 내가 얻지 못하고 있다는 것을 알지 못했던 인코딩 문제 나 뭔가가있는 것 같아요. 이 문제에 대해 밝힐 수있는 사람이 있습니까?

+2

spec_helper가 필요한 라인 1에서 오류가 발생하므로 spec_helper 코드를 공유 할 수 있습니까? –

+0

예 "user_spec.rb : 1"오류가 표시됨 ...이 질문을 잘못 작성 했습니까? 이상하게도 이미 -1이 있습니다. 그냥 약간의 도움을 찾고 :/ –

+1

@SachinSingh에서 코멘트를 다시 읽어주세요 :-) 당신이'spec_helper.rb' 파일을 게시하라는 메시지가 나타납니다. 문제의 원인이 될 가능성이 높습니다. –

답변

18

실제로 "제로 - 스페이스 문제"로 인해 물린 것 같습니다. 이것은 입니다. 극도로입니다. 당신은 "white space"가 문제를 처리해야한다고 생각합니다. 특히 Sublime과 같은 고급 편집기에서 그렇습니다.

어떤 경우 든 Sublime 2에서 이러한 문자의 존재를 감지하려면 this plugin.을 사용하여 표시 할 수 있습니다.

몇 달 전에 내가 약간의 불쾌한 점을 가진 웹 사이트에서 일부 코드를 복사/붙여 넣을 때이 문제로 인해 며칠이 걸리지 않으면 시간을 낭비했습니다.

필자는 Sublime 2 사이트에서 이와 관련된 게시물 (예 : 기능 요청 등)을 검색했지만 아무것도 찾지 못해서 이것이 레이더에 있는지 여부를 알 수 없습니다.

참고 :이 답변의 원래 버전은 제로 - 폭 공백 문자가 비 - 공백 문자와 동일하다고 가정합니다. 비 구분 공백은 여전히 ​​구문 오류를 생성하지만 디스플레이에서 "공간을 차지한다"(즉 "공백처럼 보임") 때문에 감지하기가 훨씬 쉽습니다. 여전히 "너비가 아닌 비 분리 공간"이 있는데, 이는 여전히 다릅니다. Mac (즉, Option-Space)에 비 분리 공간을 입력하는 것은 쉬운 일이지만, 너비가 0 인 공백을 입력 할 방법이 없습니다.

+2

생명의 은인 .... 덕분에 친구 : –

+0

예! 나는 전체 라인을 다시 쓰고 작동합니다! 많은 많은 많은 감사합니다! –

관련 문제