fix(#IXE2H): 重构单元测试工具
RevokePocoMapper方法支持泛型 close https://gitee.com/LongbowEnterprise/dashboard/issues?id=IXE2H
This commit is contained in:
parent
db8dbbefb1
commit
4cd8d6c9f4
|
@ -1,4 +1,4 @@
|
|||
using Longbow.Web.Mvc;
|
||||
using Longbow.Web.Mvc;
|
||||
using PetaPoco;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
@ -95,19 +95,24 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
loopEx = loopEx.InnerException;
|
||||
}
|
||||
DbManager.Create().Insert(new Exceptions
|
||||
try
|
||||
{
|
||||
AppDomainName = AppDomain.CurrentDomain.FriendlyName,
|
||||
ErrorPage = errorPage,
|
||||
UserId = additionalInfo?["UserId"],
|
||||
UserIp = additionalInfo?["UserIp"],
|
||||
ExceptionType = ex.GetType().FullName,
|
||||
Message = ex.Message,
|
||||
StackTrace = ex.StackTrace,
|
||||
LogTime = DateTime.Now,
|
||||
Category = category
|
||||
});
|
||||
ClearExceptions();
|
||||
// 防止数据库写入操作失败后陷入死循环
|
||||
DbManager.Create().Insert(new Exceptions
|
||||
{
|
||||
AppDomainName = AppDomain.CurrentDomain.FriendlyName,
|
||||
ErrorPage = errorPage,
|
||||
UserId = additionalInfo?["UserId"],
|
||||
UserIp = additionalInfo?["UserIp"],
|
||||
ExceptionType = ex.GetType().FullName,
|
||||
Message = ex.Message,
|
||||
StackTrace = ex.StackTrace,
|
||||
LogTime = DateTime.Now,
|
||||
Category = category
|
||||
});
|
||||
ClearExceptions();
|
||||
}
|
||||
catch { }
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -79,7 +79,7 @@ namespace Bootstrap.DataAccess
|
|||
var newUser = new User() { UserName = "U_Reset", DisplayName = "UnitTest", ApprovedTime = DateTime.Now, ApprovedBy = "System", Password = "1", Description = "UnitTest", RegisterTime = DateTime.Now };
|
||||
Assert.True(UserHelper.Save(newUser));
|
||||
Assert.True(UserHelper.ForgotPassword(new ResetUser() { DisplayName = "UnitTest", Reason = "UnitTest", ResetTime = DateTime.Now, UserName = newUser.UserName }));
|
||||
Assert.ThrowsAny<Exception>(() => TestHelper.RevokeUserMapper(() => new User().ResetPassword(newUser.UserName, "123789")));
|
||||
Assert.ThrowsAny<Exception>(() => TestHelper.RevokePocoMapper<User>(() => new User().ResetPassword(newUser.UserName, "123789")));
|
||||
Assert.True(UserHelper.Delete(new string[] { newUser.Id }));
|
||||
}
|
||||
|
||||
|
@ -106,5 +106,11 @@ namespace Bootstrap.DataAccess
|
|||
{
|
||||
Assert.ThrowsAny<Exception>(() => TestHelper.RevokeMapper(() => new User().SaveByGroupId("1", new string[] { "1" })));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Exceptions_Log()
|
||||
{
|
||||
TestHelper.RevokePocoMapper<Exceptions>(() => new Exceptions().Log(new Exception(), null));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -103,10 +103,10 @@ namespace UnitTest
|
|||
}
|
||||
}
|
||||
|
||||
public static void RevokeUserMapper(Action callback)
|
||||
public static void RevokePocoMapper<T>(Action callback)
|
||||
{
|
||||
var foo = new FooMapper();
|
||||
Mappers.Register(typeof(User), foo);
|
||||
Mappers.Register(typeof(T), foo);
|
||||
try { callback(); }
|
||||
catch (Exception ex) { throw ex; }
|
||||
finally
|
||||
|
|
Loading…
Reference in New Issue