public void FindAuthorizedProjectsByUserTest() { //创建一个originalmanager AppUser originalmanager = CreateUser(); AppUser actualmanager = database.Users.SingleOrDefault(b => b.StudentNum == originalmanager.StudentNum); if (actualmanager != null) { database.Users.Remove(actualmanager); Save(); } identityhelper.CreateUser(originalmanager, "zxcvbnm,./", Interface.AppRoleEnum.OrgnizationMember, OrganizationEnum.TestOnly); originalmanager = database.Users.Single(b => b.AccountName == originalmanager.AccountName); //创建org Organization org = identityhelper.CreateOrFindOrganization(Entity.OrganizationEnum.TestOnly); //创建两个项目 Guid uid1 = Guid.NewGuid(); Guid uid2 = Guid.NewGuid(); string name1 = "pro" + uid1.ToString(); string name2 = "pro" + uid2.ToString(); projectmanagehelper.CreatNewProject(org, DateTime.Now, name1, "uibe", "FindAuthorizedProjectsByUser1", 20); projectmanagehelper.CreatNewProject(org, DateTime.Now, name2, "uibe", "FindAuthorizedProjectsByUser2", 20); var addresult1 = database.Projects.SingleOrDefault(b => b.Name == name1); var addresult2 = database.Projects.SingleOrDefault(b => b.Name == name2); if (addresult1 == null && addresult2 == null) { Assert.Fail("添加记录失败!"); } var manager = database.Users.Single(m => m.AccountName == originalmanager.AccountName); var managerlist = projectmanagehelper.FindManagerListByStudentNum(originalmanager.StudentNum); projectmanagehelper.ProjectMessageInput(name1, "FindAuthorizedProjectsByUser1", "uibe", 10, DateTime.Now, managerlist, addresult1); projectmanagehelper.ProjectMessageInput(name2, "FindAuthorizedProjectsByUser1", "uibe", 10, DateTime.Now, managerlist, addresult2); // 测试FindAuthorizedProjByUser AppUser findmanager = database.Users.Single(b => b.StudentNum == originalmanager.StudentNum); var result = helper.FindAuthorizedProjectsByUser(findmanager);//59行!!想办法找到contain方法的替代 if (result == null || result.Count() != 2) { Assert.Fail("通过user查询项目失败!"); } // 删除数据库的有关数据[org pro manager] DeleteOrgnization(org); } //Helper 45行
public void ShowProjectListTest() { // 创建org Organization org = identityhelper.CreateOrFindOrganization(Entity.OrganizationEnum.TestOnly); // 创建两个project Guid uid = Guid.NewGuid(); string name1 = "testcreatafirstproject" + uid.ToString(); string name2 = "testcreatasecondproject" + uid.ToString(); ProgressResult addresult1 = helper.CreatNewProject(org, DateTime.Now, name1, "uibe", "nothing", 20); ProgressResult addresult2 = helper.CreatNewProject(org, DateTime.Now, name2, "uibe", "it's a test", 30); if (!addresult1.Succeeded || !addresult2.Succeeded) { Assert.Fail("添加记录失败!"); } // 测试ShowProjectList var result = helper.ShowProjectList(org, true); var actual = database.Projects.Where(b => b.Organization.Id == org.Id).ToList(); int resultcout = result.Count(); int actualcount = actual.Count(); if (result.Count() == 0 && actual.Count() == 0) { Assert.Fail("记录可能为空,为查询到有关记录!"); } if (resultcout != actualcount) { Assert.Fail("未成功调用showlist方法查询到有关数据!showlist失败!"); } // 删除数据库的有关数据[org pro] DeleteOrgnization(org); }
public void CreateOrFindOrganizationTest() { var org = database.Organizations.SingleOrDefault(o => o.OrganizationEnum == OrganizationEnum.TestOnly); if (org != null) { var projects = database.Projects.Where(p => p.Organization.Id == org.Id).ToList(); foreach (var p in projects) { database.Projects.Remove(p); } var users = database.Users.Where(u => u.Organization.Id == org.Id).ToList(); foreach (var u in users) { database.Users.Remove(u); } var blacklists = database.BlackListRecords.Where(b => b.Organization.Id == org.Id).ToList(); foreach (var b in blacklists) { database.BlackListRecords.Remove(b); } database.Organizations.Remove(org); database.SaveChanges(); } var helperOrg = helper.CreateOrFindOrganization(OrganizationEnum.TestOnly); if (helperOrg == null) { Assert.Fail("未返回Organization对象。"); } if (helperOrg.OrganizationEnum != OrganizationEnum.TestOnly || helperOrg.Name != OrganizationEnum.TestOnly.ToString()) { Assert.Fail("返回的Organization对象不符合标准。"); } org = database.Organizations.SingleOrDefault(o => o.OrganizationEnum == OrganizationEnum.TestOnly); if (org == null) { Assert.Fail("Organization对象未插入数据库。"); } database.Organizations.Remove(org); database.SaveChanges(); }
public void AddBlackListTest() { // 创建第一个volunteer Random tempnum = new Random(); int studentnum = tempnum.Next(000, 999); Guid uid = Guid.NewGuid(); string name = uid.ToString(); Volunteer v1 = new Volunteer() { //Id = 000, StudentNum = studentnum, Mobile = "1234567890-", Name = name, Email = "*****@*****.**", Class = "AddTestClass", Room = "AddTestRoom" }; volunteerhelper.AddVolunteer(v1); v1 = database.Volunteers.Single(b => b.StudentNum == v1.StudentNum); // 创建一个adder Guid temp = Guid.NewGuid(); string appusername = temp.ToString(); Random rnd = new Random(); int usertempnum = rnd.Next(000, 999); int usernum = usertempnum; AppUser adder = new AppUser() { AccountName = appusername, StudentNum = usernum, Mobile = "1234567890", Email = "*****@*****.**" }; identityhelper.CreateUser(adder, "23457890-", AppRoleEnum.OrgnizationMember, OrganizationEnum.TestOnly); adder = database.Users.Single(a => a.AccountName == adder.AccountName); // 创建一个org Organization org = identityhelper.CreateOrFindOrganization(OrganizationEnum.TestOnly); // 创建一个pro Guid prouid = Guid.NewGuid(); string proname = uid.ToString(); Project pro = new Project() { Name = proname, Place = "testplace", Organization = org }; projectmanagerhelper.CreatNewProject(org, System.DateTime.Now, pro.Name, pro.Place, "", 70); pro = database.Projects.Single(p => p.Name == pro.Name); // 添加第一条黑名单记录 BlackListRecord testaddrecord1 = new BlackListRecord { //Id = 1234567890, Volunteer = database.Volunteers.Single(b => b.StudentNum == v1.StudentNum), Adder = database.Users.Single(b => b.StudentNum == adder.StudentNum), Status = BlackListRecordStatus.Enabled, Organization = org, EndTime = new DateTime(2090, 2, 11), AddTime = System.DateTime.Now, Project = database.Projects.Single(b => b.Name == pro.Name) }; BlackListResult result = helper.AddBlackListRecord(testaddrecord1); if (!result.Succeeded) { Assert.Fail("返回错误结果!请检查后重试"); } var actual = helper.FindBlackList(v1); if (actual == null) { Assert.Fail("记录添加失败!数据库无此记录!"); } // 测试ExistingRecord BlackListRecord testaddrecord3 = new BlackListRecord { //Id = 0987654321 Volunteer = v1, Adder = adder, Status = BlackListRecordStatus.Enabled, Organization = org, EndTime = new DateTime(2090, 2, 11), AddTime = System.DateTime.Now, Project = pro }; BlackListResult existingrecordresult = helper.AddBlackListRecord(testaddrecord3); //Assert.AreEqual(existingrecordresult, BlackListResult.AddBlackListRecordErrorEnum.ExistingRecord, "检验existingrecord失败!"); if (!BlackListResult.AreSame(BlackListResult.Error(BlackListResult.AddBlackListRecordErrorEnum.ExistingRecord), existingrecordresult)) { Assert.Fail(); } // 测试WrongTime BlackListRecord testaddrecord4 = new BlackListRecord { EndTime = new DateTime(2017, 2, 1), AddTime = System.DateTime.Now }; var wrongtimeresult = helper.AddBlackListRecord(testaddrecord4); //Assert.AreEqual(wrongtimeresult, BlackListResult.AddBlackListRecordErrorEnum.WrongTime, "测试wrongtime失败!"); if (!BlackListResult.AreSame(BlackListResult.Error(BlackListResult.AddBlackListRecordErrorEnum.WrongTime), wrongtimeresult)) { Assert.Fail(); } // 测试Nullrecord BlackListRecord testaddrecord5 = new BlackListRecord(); var nullrecordresult = helper.AddBlackListRecord(testaddrecord5); //Assert.AreEqual(nullrecordresult, BlackListResult.AddBlackListRecordErrorEnum.NullRecord, "测试nullrecord失败!"); if (!BlackListResult.AreSame(BlackListResult.Error(BlackListResult.AddBlackListRecordErrorEnum.NullRecord), nullrecordresult)) { Assert.Fail(); } //清空数据库 DeleteOrgnization(org); // 清空org 同时清空了blacklistrecord和org下的project,users volunteerhelper.DeleteVolunteer(v1.StudentNum); }