2016-09-28 4 views
2

이것은 디렉토리를 만드는 방법입니다. rspec에서 디렉토리 생성을 조롱 할 수 있습니까?

def create_directory(path) 
    system 'mkdir', '-p', path 
end 

는 I이 방법에 대한 rspec를 생성하고 디렉토리의 작성을 모방 fakefs 사용.

it 'should create directory given path as parameter' do 
    FakeFS do 
     create_directory(DIRECTORY_PATH) 
    end 
    expect(File.exists?(DIRECTORY_PATH)).to be_truthy 
end 

rspec 명령을 실행하면이 오류가 발생합니다.

Failures: 

     1) common Test for common method use should create file given file as parameter 
     Failure/Error: expect(File.exists?(DIRECTORY_PATH)).to be_truthy 

      expected: truthy value 
       got: false 
     # ./spec/unit/lib/common_spec.rb:16:in `block (3 levels) in <top (required)>' 

    Finished in 0.01474 seconds (files took 0.10763 seconds to load) 
    2 examples, 1 failure 

    Failed examples: 

    rspec ./spec/unit/lib/common_spec.rb:12 # common Test for common method use should create file given file as parameter 

어떻게 RSpec에 또는 fakefs를 사용하여 디렉토리의 생성을 조롱하는?

+0

안녕하세요 @ 앤드류 데인코, 질문을 추가했습니다. ** ** 질문이 없습니다 ** 고객님의 질문에 –

+0

안녕하세요. 감사합니다 – micmicsuarez

답변

3
  1. 포털 대신 디렉토리를 만들려면 ruby tools을 사용하십시오.
  2. 기대치를 fakefs 블록으로 옮깁니다.
+0

안녕하세요 @Sergio, 조언 주셔서 감사합니다. rspec에서 제대로 작동합니다. – micmicsuarez

+0

@micmicsuarez : 이제 사양이 작동합니까? –

+0

네, 이제 작동합니다. 방금 당신의 권고를 따랐습니다. @Sergio 도움에 감사드립니다. – micmicsuarez

관련 문제