Nar*_*rek 2 c# unit-testing exception unity-game-engine
我统一我有一个使用错误参数调用的函数,我想确保该函数使用正确的消息抛出正确的异常。所以我的函数调用是这样的:
winDetector.DoMove(move)
Run Code Online (Sandbox Code Playgroud)
它应该抛出这样的异常:
throw new Exception("Move is not valid.");
Run Code Online (Sandbox Code Playgroud)
看起来我应该使用Assert.Throws<Exception>,但我不知道如何使用。现在介绍 Unity 和 C#。我怎样才能做到这一点?
PSAssert.Throws<Exception>这不是正确的方法。请看我下面的回答。
有一种优雅的方法可以做到这一点。这是应该如何完成的:
Assert.That(() => winDetector.DoMove(move),
Throws.TypeOf<Exception>());
Run Code Online (Sandbox Code Playgroud)