В MSTest нет ни одной эквивалентной версии, с которой мне когда-либо приходилось сталкиваться.
также при приведении к типу нет необходимости проверять, является ли экземпляр типа.Просто проверьте, не является ли оно нулевым.
// Act
var result = await controller.Index(newSession);
// Assert
var badRequestResult = result as BadRequestObjectResult;
Assert.IsNotNull(badRequestResult, "Expected BadRequestObjectResult");
Assert.IsInstanceOfType(badRequestResult.Value,typeof(SerializableError));
В противном случае вы можете создать собственное утверждение
public static class AssertExtension {
public static TExpected AssertIsType<TExpected>(this object actual, string message = null) {
TExpected result = actual as TExpected;
Assert.IsNotNull(result, message);
return result;
}
}
, обеспечивающее желаемое поведение
// Assert
var badRequestResult = result.AssertIsType<BadRequestObjectResult>();
badRequestResult.Value.AssertIsType<SerializableError>();