Update unit test

This commit is contained in:
sunkaixuan 2023-01-12 22:39:19 +08:00
parent 8ad13a747b
commit 885344efa8
5 changed files with 13 additions and 13 deletions

View File

@ -34,7 +34,7 @@ namespace OrmTest
.Queryable<UserDO, T>((u, a) => new JoinQueryInfos(JoinType.Inner, u.Id == a.UserId)) .Queryable<UserDO, T>((u, a) => new JoinQueryInfos(JoinType.Inner, u.Id == a.UserId))
.Where((u, a) => u.Id == 1) .Where((u, a) => u.Id == 1)
.Select((u, a) => a).ToSql(); .Select((u, a) => a).ToSql();
Check.Exception("SELECT a.* FROM [UserDO] [u] Inner JOIN [MyJoin] a ON ( [u].[Id] = [a].[UserId] ) WHERE ( [u].[Id] = @Id0 )" != sql.Key,"unit error"); Check.Exception("SELECT a.* FROM [UserDO] [u] Inner JOIN [MyJoin] [a] ON ( [u].[Id] = [a].[UserId] ) WHERE ( [u].[Id] = @Id0 )" != sql.Key,"unit error");
} }
} }
public class MyJoin : IUserLink public class MyJoin : IUserLink

View File

@ -17,7 +17,7 @@ namespace OrmTest
JoinType.Left, o.CustomId == c.Id JoinType.Left, o.CustomId == c.Id
)) ))
.Select<ViewModel>().ToSql().Key; .Select<ViewModel>().ToSql().Key;
UValidate.Check(sql, @"SELECT [o].[Name] AS [Name],[o].[Price] AS [Price],[i].[OrderId] AS [OrderItemOrderId],[i].[Price] AS [OrderItemPrice],[c].[Name] AS [CustomName] FROM [Order] [o] Left JOIN [OrderDetail] i ON ( [o].[Id] = [i].[OrderId] ) Left JOIN [Custom] c ON ( [o].[CustomId] = [c].[Id] )", "unit"); UValidate.Check(sql, @"SELECT [o].[Name] AS [Name],[o].[Price] AS [Price],[i].[OrderId] AS [OrderItemOrderId],[i].[Price] AS [OrderItemPrice],[c].[Name] AS [CustomName] FROM [Order] [o] Left JOIN [OrderDetail] [i] ON ( [o].[Id] = [i].[OrderId] ) Left JOIN [Custom] [c] ON ( [o].[CustomId] = [c].[Id] )", "unit");
var list = var list =
db.Queryable<Order, OrderItem, Custom>((o, i, c) => new JoinQueryInfos( db.Queryable<Order, OrderItem, Custom>((o, i, c) => new JoinQueryInfos(
JoinType.Left, o.Id == i.OrderId, JoinType.Left, o.Id == i.OrderId,

View File

@ -45,43 +45,43 @@ namespace OrmTest
var s6 = db.Queryable<UnitFilterClass1, UnitFilterClass2>((o, i) => i.id == o.id).Select("o.*").ToSql(); var s6 = db.Queryable<UnitFilterClass1, UnitFilterClass2>((o, i) => i.id == o.id).Select("o.*").ToSql();
UValidate.Check(s6.Key, "SELECT o.* FROM [UnitFilterClass1] [o] ,[UnitFilterClass2] i WHERE ( [i].[id] = [o].[id] ) AND ( [o].[id] > @id0 )", "UnitFilter"); UValidate.Check(s6.Key, "SELECT o.* FROM [UnitFilterClass1] [o] ,[UnitFilterClass2] [i] WHERE ( [i].[id] = [o].[id] ) AND ( [o].[id] > @id0 )", "UnitFilter");
var s7 = db.Queryable<UnitFilterClass1, UnitFilterClass2>((o, i) => i.id == o.id).Where(o=>o.id==1).Select("o.*").ToSql(); var s7 = db.Queryable<UnitFilterClass1, UnitFilterClass2>((o, i) => i.id == o.id).Where(o=>o.id==1).Select("o.*").ToSql();
UValidate.Check(s7.Key, "SELECT o.* FROM [UnitFilterClass1] [o] ,[UnitFilterClass2] i WHERE ( [i].[id] = [o].[id] ) AND ( [o].[id] = @id0 ) AND ( [o].[id] > @id1 )", "UnitFilter"); UValidate.Check(s7.Key, "SELECT o.* FROM [UnitFilterClass1] [o] ,[UnitFilterClass2] [i] WHERE ( [i].[id] = [o].[id] ) AND ( [o].[id] = @id0 ) AND ( [o].[id] > @id1 )", "UnitFilter");
var s8 = db.Queryable<UnitFilterClass2, UnitFilterClass1>((o, i) => i.id == o.id).Where(o => o.id == 1).Select("o.*").ToSql(); var s8 = db.Queryable<UnitFilterClass2, UnitFilterClass1>((o, i) => i.id == o.id).Where(o => o.id == 1).Select("o.*").ToSql();
UValidate.Check(s8.Key, "SELECT o.* FROM [UnitFilterClass2] [o] ,[UnitFilterClass1] i WHERE ( [i].[id] = [o].[id] ) AND ( [o].[id] = @id0 ) AND ( [i].[id] > @id1 )", "UnitFilter"); UValidate.Check(s8.Key, "SELECT o.* FROM [UnitFilterClass2] [o] ,[UnitFilterClass1] [i] WHERE ( [i].[id] = [o].[id] ) AND ( [o].[id] = @id0 ) AND ( [i].[id] > @id1 )", "UnitFilter");
var s9 = db.Queryable<UnitFilterClass1, UnitFilterClass2>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id)) var s9 = db.Queryable<UnitFilterClass1, UnitFilterClass2>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id))
.Select("o.*").ToSql(); .Select("o.*").ToSql();
UValidate.Check(s9.Key, "SELECT o.* FROM [UnitFilterClass1] [o] Left JOIN [UnitFilterClass2] i ON ( [o].[id] = [i].[id] ) WHERE ( [o].[id] > @id0 )", "UnitFilter"); UValidate.Check(s9.Key, "SELECT o.* FROM [UnitFilterClass1] [o] Left JOIN [UnitFilterClass2] [i] ON ( [o].[id] = [i].[id] ) WHERE ( [o].[id] > @id0 )", "UnitFilter");
var s91 = db.Queryable<UnitFilterClass1>().LeftJoin<UnitFilterClass2>((o, i) => o.id == i.id) var s91 = db.Queryable<UnitFilterClass1>().LeftJoin<UnitFilterClass2>((o, i) => o.id == i.id)
.Select("o.*").ToSql(); .Select("o.*").ToSql();
UValidate.Check(s91.Key, "SELECT o.* FROM [UnitFilterClass1] [o] Left JOIN [UnitFilterClass2] i ON ( [o].[id] = [i].[id] ) WHERE ( [o].[id] > @id0 )", "UnitFilter"); UValidate.Check(s91.Key, "SELECT o.* FROM [UnitFilterClass1] [o] Left JOIN [UnitFilterClass2] [i] ON ( [o].[id] = [i].[id] ) WHERE ( [o].[id] > @id0 )", "UnitFilter");
var s10= db.Queryable<UnitFilterClass1, UnitFilterClass2>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id)) var s10= db.Queryable<UnitFilterClass1, UnitFilterClass2>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id))
.Where((o,i) =>i.id==0).Select("o.*").ToSql(); .Where((o,i) =>i.id==0).Select("o.*").ToSql();
UValidate.Check(s10.Key, "SELECT o.* FROM [UnitFilterClass1] [o] Left JOIN [UnitFilterClass2] i ON ( [o].[id] = [i].[id] ) WHERE ( [i].[id] = @id0 ) AND ( [o].[id] > @id1 )", "UnitFilter"); UValidate.Check(s10.Key, "SELECT o.* FROM [UnitFilterClass1] [o] Left JOIN [UnitFilterClass2] [i] ON ( [o].[id] = [i].[id] ) WHERE ( [i].[id] = @id0 ) AND ( [o].[id] > @id1 )", "UnitFilter");
var s11 = db.Queryable<UnitFilterClass2, UnitFilterClass1>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id)) var s11 = db.Queryable<UnitFilterClass2, UnitFilterClass1>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id))
.Select("o.*").ToSql(); .Select("o.*").ToSql();
UValidate.Check(s11.Key, "SELECT o.* FROM [UnitFilterClass2] [o] Left JOIN [UnitFilterClass1] i ON ( [o].[id] = [i].[id] ) WHERE ( [i].[id] > @id0 )", "UnitFilter"); UValidate.Check(s11.Key, "SELECT o.* FROM [UnitFilterClass2] [o] Left JOIN [UnitFilterClass1] [i] ON ( [o].[id] = [i].[id] ) WHERE ( [i].[id] > @id0 )", "UnitFilter");
db.QueryFilter.Add(new SqlSugar.TableFilterItem<UnitFilterClass2>(it => it.id==0)); db.QueryFilter.Add(new SqlSugar.TableFilterItem<UnitFilterClass2>(it => it.id==0));
var s12 = db.Queryable<UnitFilterClass2, UnitFilterClass1>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id)) var s12 = db.Queryable<UnitFilterClass2, UnitFilterClass1>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id))
.Select("o.*").ToSql(); .Select("o.*").ToSql();
UValidate.Check(s12.Key, "SELECT o.* FROM [UnitFilterClass2] [o] Left JOIN [UnitFilterClass1] i ON ( [o].[id] = [i].[id] ) WHERE ( [i].[id] > @id0 ) AND ( [o].[id] = @id1 )", "UnitFilter"); UValidate.Check(s12.Key, "SELECT o.* FROM [UnitFilterClass2] [o] Left JOIN [UnitFilterClass1] [i] ON ( [o].[id] = [i].[id] ) WHERE ( [i].[id] > @id0 ) AND ( [o].[id] = @id1 )", "UnitFilter");
var s13 = db.Queryable<UnitFilterClass2, UnitFilterClass1>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id)) var s13 = db.Queryable<UnitFilterClass2, UnitFilterClass1>((o, i) => new JoinQueryInfos(JoinType.Left, o.id == i.id))
.Where(o=>o.name=="") .Where(o=>o.name=="")
.Select("o.*").ToSql(); .Select("o.*").ToSql();
UValidate.Check(s13.Key, "SELECT o.* FROM [UnitFilterClass2] [o] Left JOIN [UnitFilterClass1] i ON ( [o].[id] = [i].[id] ) WHERE ( [o].[name] = @name0 ) AND ( [i].[id] > @id1 ) AND ( [o].[id] = @id2 )", "UnitFilter"); UValidate.Check(s13.Key, "SELECT o.* FROM [UnitFilterClass2] [o] Left JOIN [UnitFilterClass1] [i] ON ( [o].[id] = [i].[id] ) WHERE ( [o].[name] = @name0 ) AND ( [i].[id] > @id1 ) AND ( [o].[id] = @id2 )", "UnitFilter");
db.QueryFilter.Clear(); db.QueryFilter.Clear();
db.QueryFilter.Add(new SqlFilterItem() db.QueryFilter.Add(new SqlFilterItem()

View File

@ -288,7 +288,7 @@ namespace OrmTest
.LeftJoin<OrderItem>((o, i) => o.Id == i.OrderId).AS<OrderItem>("[ORDERDETAIL]") .LeftJoin<OrderItem>((o, i) => o.Id == i.OrderId).AS<OrderItem>("[ORDERDETAIL]")
.LeftJoin<Custom>((o, i, c) => c.Id == o.CustomId).AS<Custom>("[CUSTOM]") .LeftJoin<Custom>((o, i, c) => c.Id == o.CustomId).AS<Custom>("[CUSTOM]")
.Select<ViewOrder>().ToSql(); .Select<ViewOrder>().ToSql();
if (sql14.Key!=("SELECT [c].[Name] AS [CustomName],[o].[Id] AS [Id],[o].[Name] AS [Name],[o].[Price] AS [Price],[o].[CreateTime] AS [CreateTime],[o].[CustomId] AS [CustomId] FROM (SELECT * FROM (select * from [ORDER]) t ) [o] Left JOIN [ORDERDETAIL] i ON ( [o].[Id] = [i].[OrderId] ) Left JOIN [CUSTOM] c ON ( [c].[Id] = [o].[CustomId] ) ")) if (sql14.Key!=("SELECT [c].[Name] AS [CustomName],[o].[Id] AS [Id],[o].[Name] AS [Name],[o].[Price] AS [Price],[o].[CreateTime] AS [CreateTime],[o].[CustomId] AS [CustomId] FROM (SELECT * FROM (select * from [ORDER]) t ) [o] Left JOIN [ORDERDETAIL] [i] ON ( [o].[Id] = [i].[OrderId] ) Left JOIN [CUSTOM] [c] ON ( [c].[Id] = [o].[CustomId] ) "))
{ {
throw new Exception("unit error"); throw new Exception("unit error");
} }

View File

@ -42,7 +42,7 @@ namespace OrmTest
.ToSqlString();//用例代码 .ToSqlString();//用例代码
if (result != "SELECT [StudentId],[SchoolNo] FROM [StudentA__1] [student] WHERE EXISTS( ( SELECT 1 FROM [SchoolA__1] [SchoolA__10] Inner JOIN [SchoolAndRoomA__1] SchoolAndRoomA__1_1 ON SchoolAndRoomA__1_1.[SchoolId]=SchoolA__10.[SchoolId] Inner JOIN [RoomA__1] RoomA__11 ON RoomA__11.[RoomId]=SchoolAndRoomA__1_1.[RoomId] WHERE student.[SchoolNo] = SchoolA__10.[SchoolNo] ) ) ") if (result != "SELECT [StudentId],[SchoolNo] FROM [StudentA__1] [student] WHERE EXISTS( ( SELECT 1 FROM [SchoolA__1] [SchoolA__10] Inner JOIN [SchoolAndRoomA__1] [SchoolAndRoomA__1_1] ON SchoolAndRoomA__1_1.[SchoolId]=SchoolA__10.[SchoolId] Inner JOIN [RoomA__1] [RoomA__11] ON RoomA__11.[RoomId]=SchoolAndRoomA__1_1.[RoomId] WHERE student.[SchoolNo] = SchoolA__10.[SchoolNo] ) ) ")
{ {
throw new Exception("unit error"); throw new Exception("unit error");
} }