From d122e7ca47c4fc6b5692fd730598aacc9dce8ed1 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Fri, 30 Sep 2022 22:41:32 +0800 Subject: [PATCH] Update unit test --- Src/Asp.Net/MySqlTest/MySqlTest.csproj | 1 + Src/Asp.Net/MySqlTest/UnitTest/Main.cs | 1 + Src/Asp.Net/MySqlTest/UnitTest/UBulkCopy2.cs | 201 +++++++++++++++++++ 3 files changed, 203 insertions(+) create mode 100644 Src/Asp.Net/MySqlTest/UnitTest/UBulkCopy2.cs diff --git a/Src/Asp.Net/MySqlTest/MySqlTest.csproj b/Src/Asp.Net/MySqlTest/MySqlTest.csproj index 165f2730b..51a080c65 100644 --- a/Src/Asp.Net/MySqlTest/MySqlTest.csproj +++ b/Src/Asp.Net/MySqlTest/MySqlTest.csproj @@ -86,6 +86,7 @@ + diff --git a/Src/Asp.Net/MySqlTest/UnitTest/Main.cs b/Src/Asp.Net/MySqlTest/UnitTest/Main.cs index fbd49ada5..3d8e52f7d 100644 --- a/Src/Asp.Net/MySqlTest/UnitTest/Main.cs +++ b/Src/Asp.Net/MySqlTest/UnitTest/Main.cs @@ -43,6 +43,7 @@ namespace OrmTest UnitCustom01.Init(); UCustom06.Init(); Bulk(); + Bulk2(); Insert(); Queue(); CodeFirst(); diff --git a/Src/Asp.Net/MySqlTest/UnitTest/UBulkCopy2.cs b/Src/Asp.Net/MySqlTest/UnitTest/UBulkCopy2.cs new file mode 100644 index 000000000..badce64f1 --- /dev/null +++ b/Src/Asp.Net/MySqlTest/UnitTest/UBulkCopy2.cs @@ -0,0 +1,201 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace OrmTest +{ + public partial class NewUnitTest + { + public static void Bulk2() + { + Db.CodeFirst.InitTables(); + Db.DbMaintenance.TruncateTable(); + var data = new UnitIdentity1() + { + Name = "jack" + }; + Db.Fastest().BulkCopy(new List() { + data + }); + var list = Db.Queryable().ToList(); + if (list.Count != 1 || data.Name != list.First().Name) + { + throw new Exception("unit Bulk"); + } + data.Name = "2"; + Db.Fastest().BulkCopy(new List() { + data, + data + }); + list = Db.Queryable().ToList(); + if (list.Count != 3 || !list.Any(it => it.Name == "2")) + { + throw new Exception("unit Bulk"); + } + Db.Fastest().BulkUpdate(new List() { + new UnitIdentity1(){ + Id=1, + Name="222" + }, + new UnitIdentity1(){ + Id=2, + Name="111" + } + }); + list = Db.Queryable().ToList(); + if (list.First(it => it.Id == 1).Name != "222") + { + throw new Exception("unit Bulk"); + } + if (list.First(it => it.Id == 2).Name != "111") + { + throw new Exception("unit Bulk"); + } + if (list.First(it => it.Id == 3).Name != "2") + { + throw new Exception("unit Bulk"); + } + Db.CodeFirst.InitTables(); + Db.DbMaintenance.TruncateTable(); + var count = Db.Fastest().AS("UnitIdentity111").BulkCopy(new List { + new UnitIdentity111111111(){ Id=1, Name="jack" } + }); + if (count == 0) + { + throw new Exception("unit Bulk"); + } + count = Db.Fastest().AS("UnitIdentity111").BulkUpdate(new List { + new UnitIdentity111111111(){ Id=1, Name="jack" } + }); + if (count == 0) + { + throw new Exception("unit Bulk"); + } + Db.CodeFirst.InitTables(); + Db.Fastest().BulkUpdate(new List { + new UnitTable001(){ Id=1, table="a" } + }); + + Db.CodeFirst.InitTables(); + Db.DbMaintenance.TruncateTable(); + Db.Fastest().BulkCopy(new List { + new UnitBulk23131() + { + Id = 1, + table = false + } + }); + var list1 = Db.Queryable().ToList(); + SqlSugar.Check.Exception(list1.First().table == true, "unit error"); + Db.Fastest().BulkUpdate(new List { + new UnitBulk23131() + { + Id = 1, + table = true + } + }); + var list2 = Db.Queryable().ToList(); + SqlSugar.Check.Exception(list2.First().table == false, "unit error"); + + Db.DbMaintenance.TruncateTable(); + Db.Fastest().BulkCopy(new List { + new UnitBulk23131() + { + Id = 1, + table = true + } + }); + var list3 = Db.Queryable().ToList(); + SqlSugar.Check.Exception(list3.First().table == false, "unit error"); + Db.Fastest().BulkUpdate(new List { + new UnitBulk23131() + { + Id = 1, + table = false + } + }); + list3 = Db.Queryable().ToList(); + SqlSugar.Check.Exception(list3.First().table == true, "unit error"); + + Db.DbMaintenance.TruncateTable(); + Db.Fastest().BulkCopy(new List { + new UnitBulk23131() + { + Id = 1, + table = null + } + }); + var list4 = Db.Queryable().ToList(); + SqlSugar.Check.Exception(list4.First().table == true, "unit error"); + + Db.CodeFirst.InitTables(); + Db.DbMaintenance.TruncateTable(); + Db.Fastest().BulkCopy(new List() { + new unitBools() + { + false1 = true, + null1 = true, + true1 = true, + id = 1 + }}); + var data2xxx = Db.Queryable().First(); + var data2 = Db.Queryable().First(); + if (data2.null1 != true || data2.true1 != true || data2.false1 != true) + { + throw new Exception("uint error"); + } + Db.Fastest().BulkUpdate(new List() { + new unitBools() + { + false1 = false, + null1 = null, + true1 = true, + id = 1 + }}); + data2 = Db.Queryable().First(); + if (data2.false1 != false || data2.true1 != true || data2.null1 != null) + { + throw new Exception("uint error"); + } + Db.CodeFirst.InitTables(); + Db.DbMaintenance.TruncateTable(); + Db.Fastest().BulkCopy(new List() { + new unitBools2() + { + false1 = false, + null1 = null, + true1 = true, + id = 1 + }}); + var data3 = Db.Queryable().First(); + if (data3.false1 != null || data2.true1 != true || data2.null1 != null) + { + throw new Exception("uint error"); + } + } + } + public class unitBools2 + { + [SqlSugar.SugarColumn(IsPrimaryKey = true)] + public int id { get; set; } + [SqlSugar.SugarColumn(IsNullable = true)] + public bool? false1 { get; set; } + [SqlSugar.SugarColumn(IsNullable = true)] + public bool? true1 { get; set; } + [SqlSugar.SugarColumn(IsNullable = true)] + public bool? null1 { get; set; } + } + public class unitBools + { + [SqlSugar.SugarColumn(IsPrimaryKey = true)] + public int id { get; set; } + [SqlSugar.SugarColumn(IsNullable = true, ColumnDataType = "tinyint", Length = 1)] + public bool? false1 { get; set; } + [SqlSugar.SugarColumn(IsNullable = true, ColumnDataType = "tinyint", Length = 1)] + public bool? true1 { get; set; } + [SqlSugar.SugarColumn(IsNullable = true, ColumnDataType = "tinyint", Length = 1)] + public bool? null1 { get; set; } + } + +}