0
如標題所示,我們發現自己處於需要檢查數組是否包含其某個屬性等於某物的元素的情況。測試數組以包含具有某個鍵的對象:值
我們嘗試並搜索了幾個小時,直到我們想提出一個問題。 我們能夠解決這樣的問題:
const playersRegs = created.gameLog.filter(e => e.nameType === eventTypes.PlayerReg);
expect(playersRegs).to.have.lengthOf(1);
但我們希望的東西有點像:
expect(created.gameLog).to.include.something.that.has.property('nameType', eventTypes.PlayerReg);
如果我們錯過了什麼,請讓我們知道,如果我們未這樣做,請考慮增加此功能;)
'find'返回'undefined'如果沒有匹配的元素。可能更好地使用總是返回「true」或「false」的'some'? – user3297291
好點。但柴也有一個未定義的支票,所以我更新了。增加了一些,因爲它確實更好 –
有沒有什麼辦法可以在一個期望中寫出整個測試?像:expect(created.gameLog).to.include.something.that.has.property('nameType',eventTypes.PlayerReg); –