【发布时间】:2014-02-10 11:48:55
【问题描述】:
我正在尝试测试域对象中 equals 的覆盖,以确保“包含”有效。尽管文档和错误说我应该能够模拟 addTo,但单元测试机制正在挑战我。
我的测试是:
@TestFor(Member)
@Mock([Member])
class MemberCategoryTests {
void testContains() {
MemberCategory schoolCat = new MemberCategory(name: "SCHOOL")
MemberCategory membersCat = new MemberCategory(name: "Members")
Member member = new Member(membershipNumber: "333333",
surname: "Tester",
forenames: "Jim",
preferredEmail: "mmm@yyy.com")
member.addToMemberCategories(schoolCat)
member.addToMemberCategories(membersCat)
MemberCategoryRedback memberCategoryRedback = new MemberCategoryRedback(name: "SCHOOL")
assert member.memberCategories.contains(memberCategoryRedback)
}
}
错误是:
No signature of method: au.com.interlated.civiLink.Member.addToMemberCategories() is applicable for argument types: (au.com.interlated.civiLink.MemberCategory)
域对象并不特殊。 MemberCategory 实现等于。
这个文档说@Mock([yyy]) 应该可以解决问题:Naleid upgrading to grails 2 testing 和 unit testing addto 一样
【问题讨论】:
标签: unit-testing grails