開發者們聽到了 <3 我抱怨了很長一段時間,認為為 @phylaxsystems 的斷言編寫測試的開發體驗真的很糟。 外部反饋證實了這一點,並且修復開發體驗被優先考慮。 這次修復提供了一個更簡單且更強大的測試介面!
我們現在有一個簡單的作弊碼,可以設置要在下一個交易中運行的斷言,而不是先設置一個帶有混淆標籤的斷言和 abi.encode,然後使用複雜的 cl.validate 來製作交易以運行該斷言。
對於一個交易,只會執行一個斷言函數。 在此之前,所有由交易觸發的斷言函數都會被執行,這使得測試特定的斷言函數變得困難。
cl.validate() 沒有持久化由它驗證的交易所造成的狀態變更。 在新的介面中,交易按預期執行,狀態也得到了更新,這意味著您可以驗證狀態變更是否如預期發生,並編寫更完整的測試。
最後,您現在可以針對確切的回退原因進行匹配,這使得為特定邊緣案例編寫測試變得更加容易,這些案例在斷言函數中的特定檢查中失敗。
作為一個到目前為止寫了很多斷言測試的人,我覺得這次更新太棒了。 我需要寫更少的代碼,並且擁有更多的控制和功能 - 開發體驗應該是這樣的。 Phylax 團隊正在 🔥
160