我想測試一個調用exit的函數。Dart - 如何針對調用exit()的函數編寫測試?
基本上,我有一個控制檯應用程序,詢問用戶他是否確定他想要覆蓋目錄。當用戶回答「否」時,目錄不會被覆蓋,程序應該退出。
promptToDeleteRepo() {
bool okToDelete = ...
if(okToDelete) {
deleteRepo();
} else {
exit(0);
}
}
所以我想測試,如果用戶回答「否」,該程序確實退出。但是,如果我測試這個,我的測試跑者退出。
在Python中我似乎能夠做一些事情,如:
with pytest.raises(SystemExit):
promptToDeleteRepo();
有沒有這樣的事情在DART?
剛纔看到Jerweb在Slack中提出了相同的建議:) –