2013-05-07 1 views
1

아래 코드가 이런 식으로 된 이유는 확실하지 않지만 누군가가 한 번 살펴보고 무슨 일이 일어나는지 확인할 수 있습니까? 예를 들어 아래의 send 메소드에서 심볼을 보내지 않는 이유는 무엇입니까? 또는 왜 우리는 어떻게 든 직접 호출하지 않습니까?send를 사용하여 도우미 클래스의 메서드 호출

describe Something do 
    shared_examples 'for something' do 
    context 'return 200 HTTP code' do 
     it 'return the correct thing' do 
     val = SomethingHelper.send(create_json) 
     end 
    end 
    end 

    describe 'fddffsf' do 
    it_behaves_like 'for something' do 
    let(:create_json) {'create_json_hash'} 
    end 
end 

그리고 SomethingHelper에 우리는 방법이

답변

1

"공유 예"create_population_management_hash라는 이름의 유사한 환경을 공유하는 여러 테스트를위한 것입니다 있습니다. 중복을 피하는 데 도움이됩니다.

예를 들어 테스트하려면 'fddffsf'를 사용하고 'create_json'에서는 유일한 차이점을 제외하고 더 비슷한 테스트를 수행 할 수 있습니다.

create_json 용량이 기호를 사용하지 이유는 당신이 기호를 사용, 당신이 let에서 변수를 정의 할 때 let

에 의해 정의 된 변수를 사용합니다. 그리고 그것을 참조 할 때는 기호없이 사용해야합니다.

+0

'let'이 될 필요가 없습니다. 그것은 방법 일 수도 있습니다. 그것은 베어 레드를 사용함에있어서의 아름다움입니다. –

관련 문제