RSpec으로 클래스 인스턴스를 두 배로 늘리는 올바른 방법은 무엇입니까?

바이너리 메이슨

RSpec을 사용하여 클래스 인스턴스에 대해 테스트를 두 배로 만들려고합니다. File 객체 만 인수로 받아들이는 테스트가 있다고 가정 해 보겠습니다.

좋아, 이제 모든 사양이 포함 된 실제 파일을 전달할 필요가 없도록 더블을 어떻게 만드나요?

let(:file) { double(File) }
raise "NOT A FILE" unless file.is_a? File
# => RuntimeError: NOT A FILE

나는 또한 이것을 시도했다 :

let(:file) { instance_double(File) }
raise "NOT A FILE" unless file.is_a? File
# => RuntimeError: NOT A FILE

그리고 이것은 (실제 파일을 기대하고 있습니다) :

let(:file) { object_double(File.new) }
# => ArgumentError: wrong number of arguments

내가 도대체 ​​뭘 잘못하고있는 겁니까?

SteveTurczyn

is_a?전화를 스텁 할 수 있습니다 .

file = instance_double(File)
allow(file).to receive(:is_a?).with(File).and_return(true)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Python에서 두 클래스를 서로 연결하는 올바른 방법은 무엇입니까?

분류에서Dev

Ruby 클래스 인스턴스 변수를 다른 클래스의 새 인스턴스로 초기화하는 방법은 무엇입니까?

분류에서Dev

__new__를 사용하여 다른 클래스의 인스턴스를 기반으로 클래스를 만드는 방법은 무엇입니까?

분류에서Dev

JSDoc 3 구문으로 객체의 클래스를 지정하는 올바른 방법은 무엇입니까?

분류에서Dev

스칼라 : 인덱싱 된 FOR 루프에서 조건을 두 배로 늘리는 방법은 무엇입니까?

분류에서Dev

여러 클래스에서 application.properties를로드하는 올바른 방법은 무엇입니까?

분류에서Dev

한 클래스의 인스턴스 메서드를 다른 클래스로 monkeypatch하는 방법은 무엇입니까?

분류에서Dev

키를 기반으로 클래스의 인스턴스를 반환하는 방법은 무엇입니까?

분류에서Dev

페이지를 올바른 방향으로 확장하는 대신 텍스트 뒤에 파선 테두리를 끝내는 방법은 무엇입니까?

분류에서Dev

클래스를 인스턴스화하는 올바른 방법으로 인증서의 경로 체인을 확인할 수 있습니다.

분류에서Dev

같은 이름으로 올바른 xpath를 얻는 방법은 무엇입니까? 스크래피

분류에서Dev

서로 다른 하위 클래스에 대해 여러 인터페이스 인스턴스를 구현하는 방법은 무엇입니까?

분류에서Dev

웹뷰 이미지를 원래 크기의 두 배로 늘리는 방법은 무엇입니까?

분류에서Dev

서로 의존하는 클래스를 인스턴스화하는 방법은 무엇입니까?

분류에서Dev

클래스 인스턴스를 JsonDocument로 변환하는 방법은 무엇입니까?

분류에서Dev

Dozer로 서브 클래스를 인스턴스화하는 방법은 무엇입니까?

분류에서Dev

xaml : CollectionViewSource를 클래스의 로컬 인스턴스 컬렉션에 바인딩하는 방법은 무엇입니까?

분류에서Dev

typescript를 사용하여 Firebase 클라우드 함수 내에서 클래스를 동적으로 가져 오는 올바른 방법은 무엇입니까?

분류에서Dev

C ++ 클래스를 다른 클래스의 구성원으로 정의하는 방법은 무엇입니까?

분류에서Dev

loopback.io에서 through 관계로 인스턴스를 만드는 API를 통해 올바른 방법은 무엇입니까?

분류에서Dev

인덱스를 기반으로 루비 배열을 두 배열로 나누는 방법은 무엇입니까?

분류에서Dev

클래스의 두 객체 (인스턴스)를 만드는 방법과 함수 f ()를 사용하는 두 가지 다른 방법은 무엇입니까?

분류에서Dev

클래스의 두 객체 (인스턴스)를 만드는 방법과 함수 f ()를 사용하는 두 가지 다른 방법은 무엇입니까?

분류에서Dev

두 개의 다른 Java 프로세스로 클래스의 단일 인스턴스를 만드는 방법

분류에서Dev

MatDialog (Angular Material)를 올바른 방법으로 단위 테스트하는 방법은 무엇입니까?

분류에서Dev

두 클래스 중 하나의 자식 인 ID로 요소를 찾는 방법은 무엇입니까?

분류에서Dev

ScrollView 내에서 DataGrid를 올바른 방식으로 스크롤하는 방법은 무엇입니까?

분류에서Dev

클래스 인스턴스 목록을 자동으로 유지하는 방법은 무엇입니까?

분류에서Dev

Excel에서 아포스트로피를 두 배로 늘리는 것을 방지하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    Python에서 두 클래스를 서로 연결하는 올바른 방법은 무엇입니까?

  2. 2

    Ruby 클래스 인스턴스 변수를 다른 클래스의 새 인스턴스로 초기화하는 방법은 무엇입니까?

  3. 3

    __new__를 사용하여 다른 클래스의 인스턴스를 기반으로 클래스를 만드는 방법은 무엇입니까?

  4. 4

    JSDoc 3 구문으로 객체의 클래스를 지정하는 올바른 방법은 무엇입니까?

  5. 5

    스칼라 : 인덱싱 된 FOR 루프에서 조건을 두 배로 늘리는 방법은 무엇입니까?

  6. 6

    여러 클래스에서 application.properties를로드하는 올바른 방법은 무엇입니까?

  7. 7

    한 클래스의 인스턴스 메서드를 다른 클래스로 monkeypatch하는 방법은 무엇입니까?

  8. 8

    키를 기반으로 클래스의 인스턴스를 반환하는 방법은 무엇입니까?

  9. 9

    페이지를 올바른 방향으로 확장하는 대신 텍스트 뒤에 파선 테두리를 끝내는 방법은 무엇입니까?

  10. 10

    클래스를 인스턴스화하는 올바른 방법으로 인증서의 경로 체인을 확인할 수 있습니다.

  11. 11

    같은 이름으로 올바른 xpath를 얻는 방법은 무엇입니까? 스크래피

  12. 12

    서로 다른 하위 클래스에 대해 여러 인터페이스 인스턴스를 구현하는 방법은 무엇입니까?

  13. 13

    웹뷰 이미지를 원래 크기의 두 배로 늘리는 방법은 무엇입니까?

  14. 14

    서로 의존하는 클래스를 인스턴스화하는 방법은 무엇입니까?

  15. 15

    클래스 인스턴스를 JsonDocument로 변환하는 방법은 무엇입니까?

  16. 16

    Dozer로 서브 클래스를 인스턴스화하는 방법은 무엇입니까?

  17. 17

    xaml : CollectionViewSource를 클래스의 로컬 인스턴스 컬렉션에 바인딩하는 방법은 무엇입니까?

  18. 18

    typescript를 사용하여 Firebase 클라우드 함수 내에서 클래스를 동적으로 가져 오는 올바른 방법은 무엇입니까?

  19. 19

    C ++ 클래스를 다른 클래스의 구성원으로 정의하는 방법은 무엇입니까?

  20. 20

    loopback.io에서 through 관계로 인스턴스를 만드는 API를 통해 올바른 방법은 무엇입니까?

  21. 21

    인덱스를 기반으로 루비 배열을 두 배열로 나누는 방법은 무엇입니까?

  22. 22

    클래스의 두 객체 (인스턴스)를 만드는 방법과 함수 f ()를 사용하는 두 가지 다른 방법은 무엇입니까?

  23. 23

    클래스의 두 객체 (인스턴스)를 만드는 방법과 함수 f ()를 사용하는 두 가지 다른 방법은 무엇입니까?

  24. 24

    두 개의 다른 Java 프로세스로 클래스의 단일 인스턴스를 만드는 방법

  25. 25

    MatDialog (Angular Material)를 올바른 방법으로 단위 테스트하는 방법은 무엇입니까?

  26. 26

    두 클래스 중 하나의 자식 인 ID로 요소를 찾는 방법은 무엇입니까?

  27. 27

    ScrollView 내에서 DataGrid를 올바른 방식으로 스크롤하는 방법은 무엇입니까?

  28. 28

    클래스 인스턴스 목록을 자동으로 유지하는 방법은 무엇입니까?

  29. 29

    Excel에서 아포스트로피를 두 배로 늘리는 것을 방지하는 방법은 무엇입니까?

뜨겁다태그

보관