mh_custom/wtmProject.Test/FrameworkUserApiTest.cs
2024-05-17 13:43:36 +08:00

239 lines
8.7 KiB
C#

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.FrameworkUserVMs;
using wtmProject.DataAccess;
namespace wtmProject.Test
{
[TestClass]
public class FrameworkUserApiTest
{
private FrameworkUserController _controller;
private string _seed;
public FrameworkUserApiTest()
{
_seed = Guid.NewGuid().ToString();
_controller = MockController.CreateApi<FrameworkUserController>(new DataContext(_seed, DBTypeEnum.Memory), "user");
}
[TestMethod]
public void SearchTest()
{
ContentResult rv = _controller.Search(new FrameworkUserSearcher()) as ContentResult;
Assert.IsTrue(string.IsNullOrEmpty(rv.Content)==false);
}
[TestMethod]
public void CreateTest()
{
FrameworkUserVM vm = _controller.Wtm.CreateVM<FrameworkUserVM>();
FrameworkUser v = new FrameworkUser();
v.Gender = WalkingTec.Mvvm.Core.GenderEnum.Male;
v.CellPhone = "2WKv3Ym5qDch0mD";
v.GroupId = AddFrameworkGroup();
v.ITCode = "uGPz4rmgSf2";
v.Password = "HCJ3e28uzLkwyNHM5wYbFT";
v.Name = "1nNmpiHkrXTDayVaG7HBeywAHk2a";
v.IsValid = true;
v.PhotoId = AddFileAttachment();
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<FrameworkUser>().Find(v.ID);
Assert.AreEqual(data.Gender, WalkingTec.Mvvm.Core.GenderEnum.Male);
Assert.AreEqual(data.CellPhone, "2WKv3Ym5qDch0mD");
Assert.AreEqual(data.ITCode, "uGPz4rmgSf2");
Assert.AreEqual(data.Password, "HCJ3e28uzLkwyNHM5wYbFT");
Assert.AreEqual(data.Name, "1nNmpiHkrXTDayVaG7HBeywAHk2a");
Assert.AreEqual(data.IsValid, true);
Assert.AreEqual(data.CreateBy, "user");
Assert.IsTrue(DateTime.Now.Subtract(data.CreateTime.Value).Seconds < 10);
}
}
[TestMethod]
public void EditTest()
{
FrameworkUser v = new FrameworkUser();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
v.Gender = WalkingTec.Mvvm.Core.GenderEnum.Male;
v.CellPhone = "2WKv3Ym5qDch0mD";
v.GroupId = AddFrameworkGroup();
v.ITCode = "uGPz4rmgSf2";
v.Password = "HCJ3e28uzLkwyNHM5wYbFT";
v.Name = "1nNmpiHkrXTDayVaG7HBeywAHk2a";
v.IsValid = true;
v.PhotoId = AddFileAttachment();
context.Set<FrameworkUser>().Add(v);
context.SaveChanges();
}
FrameworkUserVM vm = _controller.Wtm.CreateVM<FrameworkUserVM>();
var oldID = v.ID;
v = new FrameworkUser();
v.ID = oldID;
v.Gender = WalkingTec.Mvvm.Core.GenderEnum.Male;
v.CellPhone = "QG1hB2aoFA82R5";
v.ITCode = "2tkmcajPgNf1KNmUpXAHLXeCLQa5";
v.Password = "WW55JrCB5MpNk";
v.Name = "A";
v.IsValid = true;
vm.Entity = v;
vm.FC = new Dictionary<string, object>();
vm.FC.Add("Entity.Gender", "");
vm.FC.Add("Entity.CellPhone", "");
vm.FC.Add("Entity.GroupId", "");
vm.FC.Add("Entity.ITCode", "");
vm.FC.Add("Entity.Password", "");
vm.FC.Add("Entity.Name", "");
vm.FC.Add("Entity.IsValid", "");
vm.FC.Add("Entity.PhotoId", "");
var rv = _controller.Edit(vm);
Assert.IsInstanceOfType(rv, typeof(OkObjectResult));
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
var data = context.Set<FrameworkUser>().Find(v.ID);
Assert.AreEqual(data.Gender, WalkingTec.Mvvm.Core.GenderEnum.Male);
Assert.AreEqual(data.CellPhone, "QG1hB2aoFA82R5");
Assert.AreEqual(data.ITCode, "2tkmcajPgNf1KNmUpXAHLXeCLQa5");
Assert.AreEqual(data.Password, "WW55JrCB5MpNk");
Assert.AreEqual(data.Name, "A");
Assert.AreEqual(data.IsValid, true);
Assert.AreEqual(data.UpdateBy, "user");
Assert.IsTrue(DateTime.Now.Subtract(data.UpdateTime.Value).Seconds < 10);
}
}
[TestMethod]
public void GetTest()
{
FrameworkUser v = new FrameworkUser();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
v.Gender = WalkingTec.Mvvm.Core.GenderEnum.Male;
v.CellPhone = "2WKv3Ym5qDch0mD";
v.GroupId = AddFrameworkGroup();
v.ITCode = "uGPz4rmgSf2";
v.Password = "HCJ3e28uzLkwyNHM5wYbFT";
v.Name = "1nNmpiHkrXTDayVaG7HBeywAHk2a";
v.IsValid = true;
v.PhotoId = AddFileAttachment();
context.Set<FrameworkUser>().Add(v);
context.SaveChanges();
}
var rv = _controller.Get(v.ID.ToString());
Assert.IsNotNull(rv);
}
[TestMethod]
public void BatchDeleteTest()
{
FrameworkUser v1 = new FrameworkUser();
FrameworkUser v2 = new FrameworkUser();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
v1.Gender = WalkingTec.Mvvm.Core.GenderEnum.Male;
v1.CellPhone = "2WKv3Ym5qDch0mD";
v1.GroupId = AddFrameworkGroup();
v1.ITCode = "uGPz4rmgSf2";
v1.Password = "HCJ3e28uzLkwyNHM5wYbFT";
v1.Name = "1nNmpiHkrXTDayVaG7HBeywAHk2a";
v1.IsValid = true;
v1.PhotoId = AddFileAttachment();
v2.Gender = WalkingTec.Mvvm.Core.GenderEnum.Male;
v2.CellPhone = "QG1hB2aoFA82R5";
v2.GroupId = v1.GroupId;
v2.ITCode = "2tkmcajPgNf1KNmUpXAHLXeCLQa5";
v2.Password = "WW55JrCB5MpNk";
v2.Name = "A";
v2.IsValid = true;
v2.PhotoId = v1.PhotoId;
context.Set<FrameworkUser>().Add(v1);
context.Set<FrameworkUser>().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<FrameworkUser>().Find(v1.ID);
var data2 = context.Set<FrameworkUser>().Find(v2.ID);
Assert.AreEqual(data1, null);
Assert.AreEqual(data2, null);
}
rv = _controller.BatchDelete(new string[] {});
Assert.IsInstanceOfType(rv, typeof(OkResult));
}
private Guid AddFrameworkGroup()
{
FrameworkGroup v = new FrameworkGroup();
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
{
try{
v.GroupCode = "sSQDx34TELYXmOf5";
v.GroupName = "Q2Qg4eSlSZKBtKxZqJUfrTTzhhuIn";
v.GroupRemark = "27hIMrZusoNWs";
v.Manager = "KAMZdR1q9";
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 = "l";
v.FileExt = "qZ";
v.Path = "4766";
v.Length = 1;
v.UploadTime = DateTime.Parse("2024-12-01 15:36:45");
v.SaveMode = "ReZ6KcCFf3u1osRwS";
v.ExtraInfo = "kDxN7SAxcDqaqvIe";
v.HandlerInfo = "IwTyW";
context.Set<FileAttachment>().Add(v);
context.SaveChanges();
}
catch{}
}
return v.ID;
}
}
}