2012-03-01 9 views
7

Tôi đang thử nghiệm sự tương tác giữa một đối tượng và đối tượng khác với một số phương thức có các đối số gọi theo tên. Tuy nhiên, tôi không thể tìm ra cách tạo đối sánh đối sánh cho đối số từng tên đó.Có cách nào để khớp với đối số theo tên của đối tượng giả Mockito trong Thông số không?

Hãy nói rằng đây là chữ ký của đối tượng chế giễu:

def fn(arg1: => String, arg2: Int): Any

Sau đó, những gì tôi thực sự muốn làm là kiểm tra nếu phương pháp đó được gọi với một cuộc tranh luận thứ hai được biết đến. Tôi thậm chí không quan tâm nhiều đến tranh cãi đầu tiên, nhưng có một cách để kiểm tra đúng cách đó cũng sẽ là một phần thưởng.

này không hoạt động:

there was one(mock) fn(any[()=>String], eq(12))

hay này:

there was one(mock) fn(any[Function0[String]], eq(12))

và điều này thậm chí không biên dịch:

there was one(mock) fn(any[=>String], eq(12)) ... mà rõ ràng được mong đợi.

+0

Tôi không biết gì về Mockito, nhưng bạn đã thử 'bất kỳ [Chuỗi]' nào chưa? –

+0

Câu hỏi liên quan: http://stackoverflow.com/questions/2152019/how-to-mock-a-method-with-functional-arguments-in-scala –

Trả lời