in DarabonbaUnitTests/Exceptions/DaraExceptionTest.cs [153:217]
public void Test_Throw_And_Catch()
{
try
{
throw new DaraException
{
Message = "msg",
Code = "200",
AccessDeniedDetail = new Dictionary<string, object>
{
{ "NoPermissionType", "ImplicitDeny" }
},
Data = new Dictionary<string, object>
{
{ "test", "test" }
}
};
}
catch (TeaException e)
{
Assert.Equal("msg", e.Message);
Assert.Equal("200", e.Code);
Assert.Equal("ImplicitDeny", DictUtils.GetDicValue(e.AccessDeniedDetail, "NoPermissionType"));
Assert.Equal("test", DictUtils.GetDicValue(e.DataResult, "test"));
Assert.Equal("test", e.DataResult["test"]);
Assert.Equal(0, e.StatusCode);
}
try
{
throw new TestException
{
TestCode = 123,
Code = "400"
};
}
catch (TestException e)
{
Assert.Null(e.Message);
Assert.Equal("400", e.Code);
Assert.Null(e.AccessDeniedDetail);
Assert.Null(e.DataResult);
Assert.Equal(123, e.TestCode);
}
try
{
throw new TestException
{
Message = "message",
Code = "400",
Data = new Dictionary<string, object>
{
{ "test", "test" }
}
};
}
catch (DaraException e)
{
Assert.Equal("message", e.Message);
Assert.Equal("400", e.Code);
Assert.Null(e.AccessDeniedDetail);
Assert.Equal("test", e.Data["test"]);
}
}