2012-02-14 28 views
6

đây là cuộc gọi bên trong một [Test]Tê giác tê giác nói với tôi Arg <T> bên trong AssertWasCalled cần thêm đối số?

_youTubeService.AssertWasCalled(d => d.GetFeedByAuthorWithRequest("Mark", Arg<YouTubeRequest>.Is.Anything)); 

Dưới đây là các chức năng trên giao diện cho youtubeService:

Feed<Video> GetFeedByAuthorWithRequest(string author, YouTubeRequest request) 

Đây là lỗi Rhino Mocks mang lại cho tôi khi tôi chạy thử nghiệm:

System.InvalidOperationException: Khi sử dụng Arg, tất cả các đối số phải được định nghĩa bằng cách sử dụng Arg.Is, Arg.Text, Arg.List, Arg.Ref hoặc Arg.Out. 2 đối số dự kiến, 1 đã được xác định.

Tôi sử dụng Arg.Is.Anything mọi lúc với các loại khác, thường là chuỗi, vì vậy tôi không chắc nó cần gì khác.

Trả lời

10

Thông báo ngoại lệ cho bạn biết điều gì sai: tất cả các đối số phải được xác định bằng cách sử dụng Arg ....

Bạn cần chỉ định đối số "Đánh dấu" bằng cách sử dụng Arg.Is hoặc Arg.Text hoặc một số phương pháp tĩnh khác Arg.

+0

Chỉ bị ảnh hưởng bởi điều này, lý do số lượng thông số không khớp là việc thêm thông số mặc định. Cảm ơn vì câu trả lời – rob

Các vấn đề liên quan