150 lines
5.1 KiB
C#
150 lines
5.1 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.FrameworkProjectVMs;
|
|||
|
|
using wtmProject.Model;
|
|||
|
|
using wtmProject.DataAccess;
|
|||
|
|
|
|||
|
|
|
|||
|
|
namespace wtmProject.Test
|
|||
|
|
{
|
|||
|
|
[TestClass]
|
|||
|
|
public class FrameworkProjectApiTest
|
|||
|
|
{
|
|||
|
|
private FrameworkProjectController _controller;
|
|||
|
|
private string _seed;
|
|||
|
|
|
|||
|
|
public FrameworkProjectApiTest()
|
|||
|
|
{
|
|||
|
|
_seed = Guid.NewGuid().ToString();
|
|||
|
|
_controller = MockController.CreateApi<FrameworkProjectController>(new DataContext(_seed, DBTypeEnum.Memory), "user");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void SearchTest()
|
|||
|
|
{
|
|||
|
|
ContentResult rv = _controller.Search(new FrameworkProjectSearcher()) as ContentResult;
|
|||
|
|
Assert.IsTrue(string.IsNullOrEmpty(rv.Content)==false);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void CreateTest()
|
|||
|
|
{
|
|||
|
|
FrameworkProjectVM vm = _controller.Wtm.CreateVM<FrameworkProjectVM>();
|
|||
|
|
FrameworkProject v = new FrameworkProject();
|
|||
|
|
|
|||
|
|
v.ProjectCode = "WQ";
|
|||
|
|
v.ProjectName = "0QHDu64jLOYr2yndgobbDkFF";
|
|||
|
|
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<FrameworkProject>().Find(v.ID);
|
|||
|
|
|
|||
|
|
Assert.AreEqual(data.ProjectCode, "WQ");
|
|||
|
|
Assert.AreEqual(data.ProjectName, "0QHDu64jLOYr2yndgobbDkFF");
|
|||
|
|
Assert.AreEqual(data.CreateBy, "user");
|
|||
|
|
Assert.IsTrue(DateTime.Now.Subtract(data.CreateTime.Value).Seconds < 10);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void EditTest()
|
|||
|
|
{
|
|||
|
|
FrameworkProject v = new FrameworkProject();
|
|||
|
|
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
v.ProjectCode = "WQ";
|
|||
|
|
v.ProjectName = "0QHDu64jLOYr2yndgobbDkFF";
|
|||
|
|
context.Set<FrameworkProject>().Add(v);
|
|||
|
|
context.SaveChanges();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
FrameworkProjectVM vm = _controller.Wtm.CreateVM<FrameworkProjectVM>();
|
|||
|
|
var oldID = v.ID;
|
|||
|
|
v = new FrameworkProject();
|
|||
|
|
v.ID = oldID;
|
|||
|
|
|
|||
|
|
v.ProjectCode = "KiQ1bWrj5Y0qip1rZISRCqOCH";
|
|||
|
|
v.ProjectName = "n4cxav";
|
|||
|
|
vm.Entity = v;
|
|||
|
|
vm.FC = new Dictionary<string, object>();
|
|||
|
|
|
|||
|
|
vm.FC.Add("Entity.ProjectCode", "");
|
|||
|
|
vm.FC.Add("Entity.ProjectName", "");
|
|||
|
|
var rv = _controller.Edit(vm);
|
|||
|
|
Assert.IsInstanceOfType(rv, typeof(OkObjectResult));
|
|||
|
|
|
|||
|
|
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
|
|||
|
|
{
|
|||
|
|
var data = context.Set<FrameworkProject>().Find(v.ID);
|
|||
|
|
|
|||
|
|
Assert.AreEqual(data.ProjectCode, "KiQ1bWrj5Y0qip1rZISRCqOCH");
|
|||
|
|
Assert.AreEqual(data.ProjectName, "n4cxav");
|
|||
|
|
Assert.AreEqual(data.UpdateBy, "user");
|
|||
|
|
Assert.IsTrue(DateTime.Now.Subtract(data.UpdateTime.Value).Seconds < 10);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void GetTest()
|
|||
|
|
{
|
|||
|
|
FrameworkProject v = new FrameworkProject();
|
|||
|
|
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
v.ProjectCode = "WQ";
|
|||
|
|
v.ProjectName = "0QHDu64jLOYr2yndgobbDkFF";
|
|||
|
|
context.Set<FrameworkProject>().Add(v);
|
|||
|
|
context.SaveChanges();
|
|||
|
|
}
|
|||
|
|
var rv = _controller.Get(v.ID.ToString());
|
|||
|
|
Assert.IsNotNull(rv);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void BatchDeleteTest()
|
|||
|
|
{
|
|||
|
|
FrameworkProject v1 = new FrameworkProject();
|
|||
|
|
FrameworkProject v2 = new FrameworkProject();
|
|||
|
|
using (var context = new DataContext(_seed, DBTypeEnum.Memory))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
v1.ProjectCode = "WQ";
|
|||
|
|
v1.ProjectName = "0QHDu64jLOYr2yndgobbDkFF";
|
|||
|
|
v2.ProjectCode = "KiQ1bWrj5Y0qip1rZISRCqOCH";
|
|||
|
|
v2.ProjectName = "n4cxav";
|
|||
|
|
context.Set<FrameworkProject>().Add(v1);
|
|||
|
|
context.Set<FrameworkProject>().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<FrameworkProject>().Find(v1.ID);
|
|||
|
|
var data2 = context.Set<FrameworkProject>().Find(v2.ID);
|
|||
|
|
Assert.AreEqual(data1, null);
|
|||
|
|
Assert.AreEqual(data2, null);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
rv = _controller.BatchDelete(new string[] {});
|
|||
|
|
Assert.IsInstanceOfType(rv, typeof(OkResult));
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|