303 lines
13 KiB
C#
303 lines
13 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.WTM_VISIT_PLANVMs;
|
|||
|
|
using wtmProject.Model;
|
|||
|
|
using wtmProject.DataAccess;
|
|||
|
|
|
|||
|
|
|
|||
|
|
namespace wtmProject.Test
|
|||
|
|
{
|
|||
|
|
[TestClass]
|
|||
|
|
public class WTM_VISIT_PLANApiTest
|
|||
|
|
{
|
|||
|
|
private WTM_VISIT_PLANController _controller;
|
|||
|
|
private string _seed;
|
|||
|
|
|
|||
|
|
public WTM_VISIT_PLANApiTest()
|
|||
|
|
{
|
|||
|
|
_seed = Guid.NewGuid().ToString();
|
|||
|
|
_controller = MockController.CreateApi<WTM_VISIT_PLANController>(new DataContext(_seed, DBTypeEnum.Memory), "user");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void SearchTest()
|
|||
|
|
{
|
|||
|
|
ContentResult rv = _controller.Search(new WTM_VISIT_PLANSearcher()) as ContentResult;
|
|||
|
|
Assert.IsTrue(string.IsNullOrEmpty(rv.Content)==false);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void CreateTest()
|
|||
|
|
{
|
|||
|
|
WTM_VISIT_PLANVM vm = _controller.Wtm.CreateVM<WTM_VISIT_PLANVM>();
|
|||
|
|
WTM_VISIT_PLAN v = new WTM_VISIT_PLAN();
|
|||
|
|
|
|||
|
|
v.CustomId = AddWTM_CUSTOM();
|
|||
|
|
v.AreaId = AddWTM_AREA();
|
|||
|
|
v.VisitObjectId = AddWTM_CUSTOM_PERSON();
|
|||
|
|
v.VisitStartTime = DateTime.Parse("2024-06-15 16:22:47");
|
|||
|
|
v.VisitEndTime = DateTime.Parse("2024-06-20 16:22:47");
|
|||
|
|
v.VisitTarget = "V27KaBibnaAucD8MVmKab9eUxCLY43hD6PmqQMEK2hURtYhmEabTgZIzv01my3CWYmn77uysiWasIy5BtGYfiwWCiTUkcxpSSroHKfizjIV51fQHmeNwQRXegYm4bcXwq2zgewHZyqKsUNhiIjn8O4iVAU9GTHOtOIduB13bUAWfphGJdPKs4JF3Dbd46RTzbBKgg8y5LD0I5ISv72POQJ6Xn3we74Eh2pQygLIYvFa1kjn0uEhfN2SMcNYMI16NdVIeIypi8ALMzYAO7X46NV8amOI4yDJwBnS";
|
|||
|
|
v.MarkManageId = AddFrameworkUser();
|
|||
|
|
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_VISIT_PLAN>().Find(v.ID);
|
|||
|
|
|
|||
|
|
Assert.AreEqual(data.VisitStartTime, DateTime.Parse("2024-06-15 16:22:47"));
|
|||
|
|
Assert.AreEqual(data.VisitEndTime, DateTime.Parse("2024-06-20 16:22:47"));
|
|||
|
|
Assert.AreEqual(data.VisitTarget, "V27KaBibnaAucD8MVmKab9eUxCLY43hD6PmqQMEK2hURtYhmEabTgZIzv01my3CWYmn77uysiWasIy5BtGYfiwWCiTUkcxpSSroHKfizjIV51fQHmeNwQRXegYm4bcXwq2zgewHZyqKsUNhiIjn8O4iVAU9GTHOtOIduB13bUAWfphGJdPKs4JF3Dbd46RTzbBKgg8y5LD0I5ISv72POQJ6Xn3we74Eh2pQygLIYvFa1kjn0uEhfN2SMcNYMI16NdVIeIypi8ALMzYAO7X46NV8amOI4yDJwBnS");
|
|||
|
|
Assert.AreEqual(data.CreateBy, "user");
|
|||
|
|
Assert.IsTrue(DateTime.Now.Subtract(data.CreateTime.Value).Seconds < 10);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void EditTest()
|
|||
|
|
{
|
|||
|
|
WTM_VISIT_PLAN v = new WTM_VISIT_PLAN();
|
|||
|
|
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
v.CustomId = AddWTM_CUSTOM();
|
|||
|
|
v.AreaId = AddWTM_AREA();
|
|||
|
|
v.VisitObjectId = AddWTM_CUSTOM_PERSON();
|
|||
|
|
v.VisitStartTime = DateTime.Parse("2024-06-15 16:22:47");
|
|||
|
|
v.VisitEndTime = DateTime.Parse("2024-06-20 16:22:47");
|
|||
|
|
v.VisitTarget = "V27KaBibnaAucD8MVmKab9eUxCLY43hD6PmqQMEK2hURtYhmEabTgZIzv01my3CWYmn77uysiWasIy5BtGYfiwWCiTUkcxpSSroHKfizjIV51fQHmeNwQRXegYm4bcXwq2zgewHZyqKsUNhiIjn8O4iVAU9GTHOtOIduB13bUAWfphGJdPKs4JF3Dbd46RTzbBKgg8y5LD0I5ISv72POQJ6Xn3we74Eh2pQygLIYvFa1kjn0uEhfN2SMcNYMI16NdVIeIypi8ALMzYAO7X46NV8amOI4yDJwBnS";
|
|||
|
|
v.MarkManageId = AddFrameworkUser();
|
|||
|
|
context.Set<WTM_VISIT_PLAN>().Add(v);
|
|||
|
|
context.SaveChanges();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
WTM_VISIT_PLANVM vm = _controller.Wtm.CreateVM<WTM_VISIT_PLANVM>();
|
|||
|
|
var oldID = v.ID;
|
|||
|
|
v = new WTM_VISIT_PLAN();
|
|||
|
|
v.ID = oldID;
|
|||
|
|
|
|||
|
|
v.VisitStartTime = DateTime.Parse("2024-06-25 16:22:47");
|
|||
|
|
v.VisitEndTime = DateTime.Parse("2023-05-03 16:22:47");
|
|||
|
|
v.VisitTarget = "y4seHcv9Oosdo8sFXq3VIc5ws9xasiyEnTYX0eVp9j9dA26srT31Xb3tj52aNfjWe6fJpA5TXko1kc3gme7Slc3T4w9x3QGnvBAo4YsdHE7poCs4SllFe1hoQnpnQzNEIyvchmJHJhDMV1pTvh9L83ugxXXzLxELkNZw7oFDOWOisFv8i9p3nPfi6EPbJTztjFS3wmtbzbyPwOr5q49PcNF4h5hwdmKNg3gBgyUGNgRwDxPbSvMdiHspS4YRDxKiWgfB93ctvTJwGeKvU3wfI0qYYAHhMADxSjdou4IIcp6dgg91Q6EcKrlcs9Oi6LIY2IviP5r0X4fi1nDbS1kBI5AMAqEvqGlsqtG042QGfSBZhISIyrAkRCSCwmHFQeSyVILqnKyhp";
|
|||
|
|
vm.Entity = v;
|
|||
|
|
vm.FC = new Dictionary<string, object>();
|
|||
|
|
|
|||
|
|
vm.FC.Add("Entity.CustomId", "");
|
|||
|
|
vm.FC.Add("Entity.AreaId", "");
|
|||
|
|
vm.FC.Add("Entity.VisitObjectId", "");
|
|||
|
|
vm.FC.Add("Entity.VisitStartTime", "");
|
|||
|
|
vm.FC.Add("Entity.VisitEndTime", "");
|
|||
|
|
vm.FC.Add("Entity.VisitTarget", "");
|
|||
|
|
vm.FC.Add("Entity.MarkManageId", "");
|
|||
|
|
var rv = _controller.Edit(vm);
|
|||
|
|
Assert.IsInstanceOfType(rv, typeof(OkObjectResult));
|
|||
|
|
|
|||
|
|
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
|
|||
|
|
{
|
|||
|
|
var data = context.Set<WTM_VISIT_PLAN>().Find(v.ID);
|
|||
|
|
|
|||
|
|
Assert.AreEqual(data.VisitStartTime, DateTime.Parse("2024-06-25 16:22:47"));
|
|||
|
|
Assert.AreEqual(data.VisitEndTime, DateTime.Parse("2023-05-03 16:22:47"));
|
|||
|
|
Assert.AreEqual(data.VisitTarget, "y4seHcv9Oosdo8sFXq3VIc5ws9xasiyEnTYX0eVp9j9dA26srT31Xb3tj52aNfjWe6fJpA5TXko1kc3gme7Slc3T4w9x3QGnvBAo4YsdHE7poCs4SllFe1hoQnpnQzNEIyvchmJHJhDMV1pTvh9L83ugxXXzLxELkNZw7oFDOWOisFv8i9p3nPfi6EPbJTztjFS3wmtbzbyPwOr5q49PcNF4h5hwdmKNg3gBgyUGNgRwDxPbSvMdiHspS4YRDxKiWgfB93ctvTJwGeKvU3wfI0qYYAHhMADxSjdou4IIcp6dgg91Q6EcKrlcs9Oi6LIY2IviP5r0X4fi1nDbS1kBI5AMAqEvqGlsqtG042QGfSBZhISIyrAkRCSCwmHFQeSyVILqnKyhp");
|
|||
|
|
Assert.AreEqual(data.UpdateBy, "user");
|
|||
|
|
Assert.IsTrue(DateTime.Now.Subtract(data.UpdateTime.Value).Seconds < 10);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void GetTest()
|
|||
|
|
{
|
|||
|
|
WTM_VISIT_PLAN v = new WTM_VISIT_PLAN();
|
|||
|
|
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
v.CustomId = AddWTM_CUSTOM();
|
|||
|
|
v.AreaId = AddWTM_AREA();
|
|||
|
|
v.VisitObjectId = AddWTM_CUSTOM_PERSON();
|
|||
|
|
v.VisitStartTime = DateTime.Parse("2024-06-15 16:22:47");
|
|||
|
|
v.VisitEndTime = DateTime.Parse("2024-06-20 16:22:47");
|
|||
|
|
v.VisitTarget = "V27KaBibnaAucD8MVmKab9eUxCLY43hD6PmqQMEK2hURtYhmEabTgZIzv01my3CWYmn77uysiWasIy5BtGYfiwWCiTUkcxpSSroHKfizjIV51fQHmeNwQRXegYm4bcXwq2zgewHZyqKsUNhiIjn8O4iVAU9GTHOtOIduB13bUAWfphGJdPKs4JF3Dbd46RTzbBKgg8y5LD0I5ISv72POQJ6Xn3we74Eh2pQygLIYvFa1kjn0uEhfN2SMcNYMI16NdVIeIypi8ALMzYAO7X46NV8amOI4yDJwBnS";
|
|||
|
|
v.MarkManageId = AddFrameworkUser();
|
|||
|
|
context.Set<WTM_VISIT_PLAN>().Add(v);
|
|||
|
|
context.SaveChanges();
|
|||
|
|
}
|
|||
|
|
var rv = _controller.Get(v.ID.ToString());
|
|||
|
|
Assert.IsNotNull(rv);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void BatchDeleteTest()
|
|||
|
|
{
|
|||
|
|
WTM_VISIT_PLAN v1 = new WTM_VISIT_PLAN();
|
|||
|
|
WTM_VISIT_PLAN v2 = new WTM_VISIT_PLAN();
|
|||
|
|
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
v1.CustomId = AddWTM_CUSTOM();
|
|||
|
|
v1.AreaId = AddWTM_AREA();
|
|||
|
|
v1.VisitObjectId = AddWTM_CUSTOM_PERSON();
|
|||
|
|
v1.VisitStartTime = DateTime.Parse("2024-06-15 16:22:47");
|
|||
|
|
v1.VisitEndTime = DateTime.Parse("2024-06-20 16:22:47");
|
|||
|
|
v1.VisitTarget = "V27KaBibnaAucD8MVmKab9eUxCLY43hD6PmqQMEK2hURtYhmEabTgZIzv01my3CWYmn77uysiWasIy5BtGYfiwWCiTUkcxpSSroHKfizjIV51fQHmeNwQRXegYm4bcXwq2zgewHZyqKsUNhiIjn8O4iVAU9GTHOtOIduB13bUAWfphGJdPKs4JF3Dbd46RTzbBKgg8y5LD0I5ISv72POQJ6Xn3we74Eh2pQygLIYvFa1kjn0uEhfN2SMcNYMI16NdVIeIypi8ALMzYAO7X46NV8amOI4yDJwBnS";
|
|||
|
|
v1.MarkManageId = AddFrameworkUser();
|
|||
|
|
v2.CustomId = v1.CustomId;
|
|||
|
|
v2.AreaId = v1.AreaId;
|
|||
|
|
v2.VisitObjectId = v1.VisitObjectId;
|
|||
|
|
v2.VisitStartTime = DateTime.Parse("2024-06-25 16:22:47");
|
|||
|
|
v2.VisitEndTime = DateTime.Parse("2023-05-03 16:22:47");
|
|||
|
|
v2.VisitTarget = "y4seHcv9Oosdo8sFXq3VIc5ws9xasiyEnTYX0eVp9j9dA26srT31Xb3tj52aNfjWe6fJpA5TXko1kc3gme7Slc3T4w9x3QGnvBAo4YsdHE7poCs4SllFe1hoQnpnQzNEIyvchmJHJhDMV1pTvh9L83ugxXXzLxELkNZw7oFDOWOisFv8i9p3nPfi6EPbJTztjFS3wmtbzbyPwOr5q49PcNF4h5hwdmKNg3gBgyUGNgRwDxPbSvMdiHspS4YRDxKiWgfB93ctvTJwGeKvU3wfI0qYYAHhMADxSjdou4IIcp6dgg91Q6EcKrlcs9Oi6LIY2IviP5r0X4fi1nDbS1kBI5AMAqEvqGlsqtG042QGfSBZhISIyrAkRCSCwmHFQeSyVILqnKyhp";
|
|||
|
|
v2.MarkManageId = v1.MarkManageId;
|
|||
|
|
context.Set<WTM_VISIT_PLAN>().Add(v1);
|
|||
|
|
context.Set<WTM_VISIT_PLAN>().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_VISIT_PLAN>().Find(v1.ID);
|
|||
|
|
var data2 = context.Set<WTM_VISIT_PLAN>().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 = "bfMGraiFFs9QbqtNXotwVhByoxyiw";
|
|||
|
|
v.AreaName = "KTUlSCWfyGfx7cqwVEkADnXhFfBMEBYrzBrbVB1J";
|
|||
|
|
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 = "3nTEQ1RrjRHazqOYkTbrDDKpqL4RD4u";
|
|||
|
|
v.CustomShortName = "HjEEf5tVLCFdzyM6Ukx";
|
|||
|
|
v.ParentUnit = "3";
|
|||
|
|
v.AreaId = AddWTM_AREA();
|
|||
|
|
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 = "S";
|
|||
|
|
v.PersonPhone = "DRI1bBNvT973KpL";
|
|||
|
|
v.PersonPost = "ybFeuUGouKbD";
|
|||
|
|
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 = "zdTpW6cTt";
|
|||
|
|
v.GroupName = "YRgC2";
|
|||
|
|
v.GroupRemark = "ilMg5Gciyj";
|
|||
|
|
v.Manager = "i7hv";
|
|||
|
|
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 = "O";
|
|||
|
|
v.FileExt = "T9B";
|
|||
|
|
v.Path = "4C";
|
|||
|
|
v.Length = 80;
|
|||
|
|
v.UploadTime = DateTime.Parse("2024-08-22 16:22:47");
|
|||
|
|
v.SaveMode = "UD";
|
|||
|
|
v.ExtraInfo = "N9wS3N9qbxWkgFi";
|
|||
|
|
v.HandlerInfo = "Haeb9Nglwa";
|
|||
|
|
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.Female;
|
|||
|
|
v.CellPhone = "Yt";
|
|||
|
|
v.GroupId = AddFrameworkGroup();
|
|||
|
|
v.ITCode = "n2hzhFKwDxBe8sGXo";
|
|||
|
|
v.Password = "hkfgR3zCQnEW003UZMeK";
|
|||
|
|
v.Name = "GxnDydZb6zXEokiQIVqL";
|
|||
|
|
v.IsValid = false;
|
|||
|
|
v.PhotoId = AddFileAttachment();
|
|||
|
|
context.Set<FrameworkUser>().Add(v);
|
|||
|
|
context.SaveChanges();
|
|||
|
|
}
|
|||
|
|
catch{}
|
|||
|
|
}
|
|||
|
|
return v.ID;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|