mh_custom/wtmProject.Test/WTM_CONTRACTApiTest.cs

381 lines
15 KiB
C#
Raw Normal View History

2024-05-16 17:30:33 +08:00
using Microsoft.AspNetCore.Mvc;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WalkingTec.Mvvm.Core;
using wtmProject.Controllers;
using wtmProject.ViewModel._Admin.WTM_CONTRACTVMs;
using wtmProject.Model;
using wtmProject.DataAccess;
namespace wtmProject.Test
{
[TestClass]
public class WTM_CONTRACTApiTest
{
private WTM_CONTRACTController _controller;
private string _seed;
public WTM_CONTRACTApiTest()
{
_seed = Guid.NewGuid().ToString();
_controller = MockController.CreateApi<WTM_CONTRACTController>(new DataContext(_seed, DBTypeEnum.Memory), "user");
}
[TestMethod]
public void SearchTest()
{
ContentResult rv = _controller.Search(new WTM_CONTRACTSearcher()) as ContentResult;
Assert.IsTrue(string.IsNullOrEmpty(rv.Content)==false);
}
[TestMethod]
public void CreateTest()
{
WTM_CONTRACTVM vm = _controller.Wtm.CreateVM<WTM_CONTRACTVM>();
WTM_CONTRACT v = new WTM_CONTRACT();
v.CustomId = AddWTM_CUSTOM();
v.CustomClass = wtmProject.Model.CustomClassEnum.Inside;
v.AreaId = AddWTM_AREA();
v.VisitObjectId = AddWTM_CUSTOM_PERSON();
v.MarkManageId = AddFrameworkUser();
v.ProjectId = AddWTM_PROJECT();
v.ContractName = "GuUPpCoSUm0acPdhfE6rFZxEC4l5o0o";
v.ContractCode = "hIytVohSedZtoXokbG07r5Uim0TULgqliC1RyekjTYv2AfR21nNavWa7I2JaTG9wO2rojDYGfWK0g";
v.SignDate = DateTime.Parse("2023-10-27 15:33:34");
v.ContractAmount = 79;
v.CostAmount = 72;
v.ContractCycle = wtmProject.Model.ContractCycleEnum.ThirdCycle;
v.ProjectManageId = AddFrameworkUser();
v.GrossProfitMargin = "FA4jQDJJLX5IttsaomaVy7kWu6mnBL2lFWyClH";
vm.Entity = v;
var rv = _controller.Add(vm);
Assert.IsInstanceOfType(rv, typeof(OkObjectResult));
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
var data = context.Set<WTM_CONTRACT>().Find(v.ID);
Assert.AreEqual(data.CustomClass, wtmProject.Model.CustomClassEnum.Inside);
Assert.AreEqual(data.ContractName, "GuUPpCoSUm0acPdhfE6rFZxEC4l5o0o");
Assert.AreEqual(data.ContractCode, "hIytVohSedZtoXokbG07r5Uim0TULgqliC1RyekjTYv2AfR21nNavWa7I2JaTG9wO2rojDYGfWK0g");
Assert.AreEqual(data.SignDate, DateTime.Parse("2023-10-27 15:33:34"));
Assert.AreEqual(data.ContractAmount, 79);
Assert.AreEqual(data.CostAmount, 72);
Assert.AreEqual(data.ContractCycle, wtmProject.Model.ContractCycleEnum.ThirdCycle);
Assert.AreEqual(data.GrossProfitMargin, "FA4jQDJJLX5IttsaomaVy7kWu6mnBL2lFWyClH");
Assert.AreEqual(data.CreateBy, "user");
Assert.IsTrue(DateTime.Now.Subtract(data.CreateTime.Value).Seconds < 10);
}
}
[TestMethod]
public void EditTest()
{
WTM_CONTRACT v = new WTM_CONTRACT();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
v.CustomId = AddWTM_CUSTOM();
v.CustomClass = wtmProject.Model.CustomClassEnum.Inside;
v.AreaId = AddWTM_AREA();
v.VisitObjectId = AddWTM_CUSTOM_PERSON();
v.MarkManageId = AddFrameworkUser();
v.ProjectId = AddWTM_PROJECT();
v.ContractName = "GuUPpCoSUm0acPdhfE6rFZxEC4l5o0o";
v.ContractCode = "hIytVohSedZtoXokbG07r5Uim0TULgqliC1RyekjTYv2AfR21nNavWa7I2JaTG9wO2rojDYGfWK0g";
v.SignDate = DateTime.Parse("2023-10-27 15:33:34");
v.ContractAmount = 79;
v.CostAmount = 72;
v.ContractCycle = wtmProject.Model.ContractCycleEnum.ThirdCycle;
v.ProjectManageId = AddFrameworkUser();
v.GrossProfitMargin = "FA4jQDJJLX5IttsaomaVy7kWu6mnBL2lFWyClH";
context.Set<WTM_CONTRACT>().Add(v);
context.SaveChanges();
}
WTM_CONTRACTVM vm = _controller.Wtm.CreateVM<WTM_CONTRACTVM>();
var oldID = v.ID;
v = new WTM_CONTRACT();
v.ID = oldID;
v.CustomClass = wtmProject.Model.CustomClassEnum.Inside;
v.ContractName = "ZLqSZU0IvuR4SmUpyxvRGCqrAkTjYszyEKunjfqrts4G7TobRAcr4pjLbq83eSuUj";
v.ContractCode = "s8Bf4IOCzEyf15RegORRzFoUqkPCPSxoEIqi8kgm";
v.SignDate = DateTime.Parse("2024-09-03 15:33:34");
v.ContractAmount = 35;
v.CostAmount = 3;
v.ContractCycle = wtmProject.Model.ContractCycleEnum.ThirdCycle;
v.GrossProfitMargin = "lDLkYKzgOOhtFx";
vm.Entity = v;
vm.FC = new Dictionary<string, object>();
vm.FC.Add("Entity.CustomId", "");
vm.FC.Add("Entity.CustomClass", "");
vm.FC.Add("Entity.AreaId", "");
vm.FC.Add("Entity.VisitObjectId", "");
vm.FC.Add("Entity.MarkManageId", "");
vm.FC.Add("Entity.ProjectId", "");
vm.FC.Add("Entity.ContractName", "");
vm.FC.Add("Entity.ContractCode", "");
vm.FC.Add("Entity.SignDate", "");
vm.FC.Add("Entity.ContractAmount", "");
vm.FC.Add("Entity.CostAmount", "");
vm.FC.Add("Entity.ContractCycle", "");
vm.FC.Add("Entity.ProjectManageId", "");
vm.FC.Add("Entity.GrossProfitMargin", "");
var rv = _controller.Edit(vm);
Assert.IsInstanceOfType(rv, typeof(OkObjectResult));
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
var data = context.Set<WTM_CONTRACT>().Find(v.ID);
Assert.AreEqual(data.CustomClass, wtmProject.Model.CustomClassEnum.Inside);
Assert.AreEqual(data.ContractName, "ZLqSZU0IvuR4SmUpyxvRGCqrAkTjYszyEKunjfqrts4G7TobRAcr4pjLbq83eSuUj");
Assert.AreEqual(data.ContractCode, "s8Bf4IOCzEyf15RegORRzFoUqkPCPSxoEIqi8kgm");
Assert.AreEqual(data.SignDate, DateTime.Parse("2024-09-03 15:33:34"));
Assert.AreEqual(data.ContractAmount, 35);
Assert.AreEqual(data.CostAmount, 3);
Assert.AreEqual(data.ContractCycle, wtmProject.Model.ContractCycleEnum.ThirdCycle);
Assert.AreEqual(data.GrossProfitMargin, "lDLkYKzgOOhtFx");
Assert.AreEqual(data.UpdateBy, "user");
Assert.IsTrue(DateTime.Now.Subtract(data.UpdateTime.Value).Seconds < 10);
}
}
[TestMethod]
public void GetTest()
{
WTM_CONTRACT v = new WTM_CONTRACT();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
v.CustomId = AddWTM_CUSTOM();
v.CustomClass = wtmProject.Model.CustomClassEnum.Inside;
v.AreaId = AddWTM_AREA();
v.VisitObjectId = AddWTM_CUSTOM_PERSON();
v.MarkManageId = AddFrameworkUser();
v.ProjectId = AddWTM_PROJECT();
v.ContractName = "GuUPpCoSUm0acPdhfE6rFZxEC4l5o0o";
v.ContractCode = "hIytVohSedZtoXokbG07r5Uim0TULgqliC1RyekjTYv2AfR21nNavWa7I2JaTG9wO2rojDYGfWK0g";
v.SignDate = DateTime.Parse("2023-10-27 15:33:34");
v.ContractAmount = 79;
v.CostAmount = 72;
v.ContractCycle = wtmProject.Model.ContractCycleEnum.ThirdCycle;
v.ProjectManageId = AddFrameworkUser();
v.GrossProfitMargin = "FA4jQDJJLX5IttsaomaVy7kWu6mnBL2lFWyClH";
context.Set<WTM_CONTRACT>().Add(v);
context.SaveChanges();
}
var rv = _controller.Get(v.ID.ToString());
Assert.IsNotNull(rv);
}
[TestMethod]
public void BatchDeleteTest()
{
WTM_CONTRACT v1 = new WTM_CONTRACT();
WTM_CONTRACT v2 = new WTM_CONTRACT();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
v1.CustomId = AddWTM_CUSTOM();
v1.CustomClass = wtmProject.Model.CustomClassEnum.Inside;
v1.AreaId = AddWTM_AREA();
v1.VisitObjectId = AddWTM_CUSTOM_PERSON();
v1.MarkManageId = AddFrameworkUser();
v1.ProjectId = AddWTM_PROJECT();
v1.ContractName = "GuUPpCoSUm0acPdhfE6rFZxEC4l5o0o";
v1.ContractCode = "hIytVohSedZtoXokbG07r5Uim0TULgqliC1RyekjTYv2AfR21nNavWa7I2JaTG9wO2rojDYGfWK0g";
v1.SignDate = DateTime.Parse("2023-10-27 15:33:34");
v1.ContractAmount = 79;
v1.CostAmount = 72;
v1.ContractCycle = wtmProject.Model.ContractCycleEnum.ThirdCycle;
v1.ProjectManageId = AddFrameworkUser();
v1.GrossProfitMargin = "FA4jQDJJLX5IttsaomaVy7kWu6mnBL2lFWyClH";
v2.CustomId = v1.CustomId;
v2.CustomClass = wtmProject.Model.CustomClassEnum.Inside;
v2.AreaId = v1.AreaId;
v2.VisitObjectId = v1.VisitObjectId;
v2.MarkManageId = v1.MarkManageId;
v2.ProjectId = v1.ProjectId;
v2.ContractName = "ZLqSZU0IvuR4SmUpyxvRGCqrAkTjYszyEKunjfqrts4G7TobRAcr4pjLbq83eSuUj";
v2.ContractCode = "s8Bf4IOCzEyf15RegORRzFoUqkPCPSxoEIqi8kgm";
v2.SignDate = DateTime.Parse("2024-09-03 15:33:34");
v2.ContractAmount = 35;
v2.CostAmount = 3;
v2.ContractCycle = wtmProject.Model.ContractCycleEnum.ThirdCycle;
v2.ProjectManageId = v1.ProjectManageId;
v2.GrossProfitMargin = "lDLkYKzgOOhtFx";
context.Set<WTM_CONTRACT>().Add(v1);
context.Set<WTM_CONTRACT>().Add(v2);
context.SaveChanges();
}
var rv = _controller.BatchDelete(new string[] { v1.ID.ToString(), v2.ID.ToString() });
Assert.IsInstanceOfType(rv, typeof(OkObjectResult));
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
var data1 = context.Set<WTM_CONTRACT>().Find(v1.ID);
var data2 = context.Set<WTM_CONTRACT>().Find(v2.ID);
Assert.AreEqual(data1, null);
Assert.AreEqual(data2, null);
}
rv = _controller.BatchDelete(new string[] {});
Assert.IsInstanceOfType(rv, typeof(OkResult));
}
private Guid AddWTM_AREA()
{
WTM_AREA v = new WTM_AREA();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
try{
v.AreaCode = "EbJmhTsfbwc4eD";
v.AreaName = "MfFEZAVqdZDPVVx2UPEowUy";
context.Set<WTM_AREA>().Add(v);
context.SaveChanges();
}
catch{}
}
return v.ID;
}
private Guid AddWTM_CUSTOM()
{
WTM_CUSTOM v = new WTM_CUSTOM();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
try{
v.CustomAllName = "zEubt9fNFYIcPM8Z0GDt";
v.CustomShortName = "XgnO5POVIOO6RbkvdY9";
v.ParentUnit = "dbooTcBir8WLUYJEyRac9kww0Bwv7jJLyN";
v.AreaId = AddWTM_AREA();
v.EnterprisesType = wtmProject.Model.EnterprisesTypeEnum.Center;
v.IndustryType = wtmProject.Model.IndustryTypeEnum.Tungsten;
v.CustomClass = wtmProject.Model.CustomClassEnum.OutSide;
context.Set<WTM_CUSTOM>().Add(v);
context.SaveChanges();
}
catch{}
}
return v.ID;
}
private Guid AddWTM_CUSTOM_PERSON()
{
WTM_CUSTOM_PERSON v = new WTM_CUSTOM_PERSON();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
try{
v.CustomId = AddWTM_CUSTOM();
v.PersonName = "SYI6iqVL89ASNRo";
v.PersonPhone = "luQKGjMsIeXXxBJ26";
v.PersonPost = "hJPls2Dv1L81AsEXZC";
context.Set<WTM_CUSTOM_PERSON>().Add(v);
context.SaveChanges();
}
catch{}
}
return v.ID;
}
private Guid AddFrameworkGroup()
{
FrameworkGroup v = new FrameworkGroup();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
try{
v.GroupCode = "DRMi6ADhMd1Cq1kswdNS0Ll9cdNW6o4g9l";
v.GroupName = "gfZKTPT7Y6B7lAEutQS4idUXR4WM";
v.GroupRemark = "sRThuSfRY";
v.Manager = "UJjDcpZAt";
context.Set<FrameworkGroup>().Add(v);
context.SaveChanges();
}
catch{}
}
return v.ID;
}
private Guid AddFileAttachment()
{
FileAttachment v = new FileAttachment();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
try{
v.FileName = "A4BCst4p1sL1BA8g";
v.FileExt = "hUE";
v.Path = "4";
v.Length = 59;
v.UploadTime = DateTime.Parse("2023-09-27 15:33:34");
v.SaveMode = "d0k";
v.ExtraInfo = "h9gtsLoR7VWtjJGW";
v.HandlerInfo = "ni";
context.Set<FileAttachment>().Add(v);
context.SaveChanges();
}
catch{}
}
return v.ID;
}
private Guid AddFrameworkUser()
{
FrameworkUser v = new FrameworkUser();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
try{
v.Gender = WalkingTec.Mvvm.Core.GenderEnum.Male;
v.CellPhone = "P";
v.GroupId = AddFrameworkGroup();
v.DisplayOrder = 85;
v.ITCode = "h1KPnxtVFUwopGKFFQiwl02XHU9sqlFcNGmWAGDKpC5vph1iw";
v.Password = "hjgpaQ";
v.Name = "dbSx4LBgahMk54qLjUmui3KoXNTupW";
v.IsValid = false;
v.PhotoId = AddFileAttachment();
context.Set<FrameworkUser>().Add(v);
context.SaveChanges();
}
catch{}
}
return v.ID;
}
private Guid AddWTM_PROJECT()
{
WTM_PROJECT v = new WTM_PROJECT();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
try{
v.ProjectCode = "IlRMtfFs46O31";
v.ProjectName = "bDMgH2PovARvOQ3sp0jgav0wr";
context.Set<WTM_PROJECT>().Add(v);
context.SaveChanges();
}
catch{}
}
return v.ID;
}
}
}