我在测试中创建了一条新记录...在创建记录期间,应用程序调用另一个类来通知用户有关创建记录的信息。
一个人为的例子可能是
user = User.make!
expect_any_instance_of(Notifier).to receive(:tell_user).with(user.id, new_message_id)
Message.create(author: User.make!, recepient: user, message: 'this is a test')
现在显然我不知道将要创建的消息的ID 因此,我想知道是否有人知道我是如何构建预期的一部分而不关心第二个参数中的值,而是关心第一个参数中的值。
感谢您的帮助。
答案 0 :(得分:1)
我认为你要找的是kind_of
方法
user = User.make!
expect_any_instance_of(Notifier).to receive(:tell_user).with(user.id, kind_of(Numeric))
Message.create(author: User.make!, recepient: user, message: 'this is a test')
如果您想更具体,也可以使用instance_of(Fixnum)