Tôi có một đối tượng giả được truyền qua như một đối số hàm tạo cho đối tượng khác.Rhino Mocks AssertWasCalled (nhiều lần) trên thuộc tính getter bằng cách sử dụng AAA
Làm cách nào tôi có thể kiểm tra thuộc tính của đối tượng được giả mạo đã được gọi? Đây là mã tôi đang sử dụng hiện tại:
INewContactAttributes newContact = MockRepository.GenerateMock<INewContactAttributes>();
newContact.Stub(x => x.Forenames).Return("One Two Three");
someobject.ConsumeContact(newContact);
newContact.AssertWasCalled(x => { var dummy = x.Forenames; });
Công trình này ngoại trừ khi sử dụng "someobject" getter trên tài sản Tên gọi nhiều lần. Đó là khi tôi nhận được "Rhino.Mocks.Exceptions.ExpectationViolationException: INewContactAttributes.get_Forenames(); dự kiến # 1, # 2 thực tế .."
Đơn giản chỉ cần sử dụng
newContact.AssertWasCalled(x => { var dummy = x.Forenames; }, options => options.Repeat.Any());
không hoạt động và cung cấp cho các lỗi dưới đây :
"Kỳ vọng đã bị xóa khỏi danh sách mong đợi chờ đợi, bạn có gọi Repeat.Any() không? Điều này không được hỗ trợ trong AssertWasCalled()."
Vậy làm cách nào để phục vụ cho nhiều cuộc gọi?
Nhấp vào ✓ dưới đây là một trong những câu trả lời để chấp nhận nó. – lockstock