目前我正在这样做:
expect( tasks.at(0).get('title') ).to.be('Root')
expect( tasks.at(0).get('next') ).to.be(true)
但似乎应该有更好的方法。我宁愿做这样的事情:
expect(tasks.at(0).attributes).to.eql({title:'Root', next:true})
但这不起作用,因为tasks.at(1).attributes
有许多其他属性,所以它不严格匹配。有任何想法吗?使用除了expectjs以外的东西我很好。
答案 0 :(得分:0)
我不知道这是不是最好的方法,但我接受了@skizeey的建议,并自己做了测试扩展。换句话说,现在我打电话(在coffeescript中):
expect(tasks).to.have.modelAttributes
1: title:'Root'
2: title:'Child'
我使用的代码非常特定于我正在使用的测试库(切换到Chai),但一般的想法是我迭代哈希,提取索引,然后查看每个键:值。这是我的代码的通用示例:
# Check each index
for index of properties
# Iterate over each key:value in each index
for key of properties[index]