我们想在assert()
失败时打印一条消息。目前在Dart中,断言只需要一个布尔值。我们希望给开发者明确的理由和指示,说明断言失败时该怎么做。如何在Dart中断言失败时打印消息?
5
A
回答
4
参见作为Dart 1.22,assert()
带有一个可选的消息。
assert(configFile != null, "Tool config missing.");
如果断言失败,它会产生类似以下内容:
Unhandled exception:
'file:///.../main.dart': Failed assertion: line 9 pos 10:
'configFile != null': Tool config missing.
#0 _AssertionError._doThrowNew (dart:core-patch/errors_patch.dart:33)
#1 _AssertionError._throwNew (dart:core-patch/errors_patch.dart:29)
#2 main (file:///.../main.dart:9:10)
注意,错误消息中包含的实际断言(configFile != null
)。
4
有一个悬而未决的问题有一个解决办法https://github.com/dart-lang/sdk/issues/6190#issuecomment-119103626
assert(() => test || throw "message");
我试过,但这种方式是行不通的。稍微修改工作版本
var test = false;
assert(test ? true : throw "message");
也
相关问题
- 1. 如何将所有断言失败消息打印到SoapUI的HTML报告中
- 2. 断言失败时如何打印更多内容?
- 3. Groovy漂亮打印XML断言失败
- 4. 调试断言失败的消息
- 5. 弹出消息:断言失败
- 6. 获取NUnit断言失败消息
- 7. 打印GetArgumentsForCallsMadeOne如果在RhinoMock中断言失败
- 8. py.test:格式化失败的断言和打印自定义消息
- 9. popToViewController引发“断言失败”消息,该如何解决?
- 10. 我想在登录失败时打印警报消息
- 11. 如何在声明失败时使HUnit打印断行?
- 12. 如何让GDB在GLib断言失败时中断?
- 13. 断言失败
- 14. 断言失败
- 15. Rails的,失败的断言,没有任何消息给
- 16. python中断言的打印成功消息
- 17. 在WPF WebBrowser中打开Facebook eml时断言失败
- 18. xmlSecInit()打印断言失败到stderr(g_xslt_default_security_prefs == NULL)
- 19. Java断言打印
- 20. JMeter断言失败
- 21. xcode断言失败
- 22. calcopticalflowpyrlk断言失败
- 23. MZFormSheetController断言失败
- 24. UICollectionView断言失败
- 25. OpenCv断言失败
- 26. findcontours断言失败
- 27. 调试断言失败,打开CV SIFT
- 28. 信息截断时打印
- 29. 替代断言获取失败日志消息并继续?
- 30. “断言失败”的消息不完全使用的CppUnit和TFS2015