public void GetTags() { var account = this.CreateAccount(); var team = CreateSampleTeam(); var creatorMember = AddSampleMemberToTeam(account, team); var task1 = new Task(creatorMember, team); task1.AddTag("程序设计"); task1.AddTag(".NET"); task1.AddTag("ASP.NET"); task1.AddTag("001_Tag_001"); task1.MarkAsCompleted(); this._teamTaskService.Create(task1); var task2 = new Task(creatorMember, team); task2.AddTag("Mono"); task2.AddTag(".net"); task2.AddTag("JAVA"); task2.AddTag("JAVA.NET"); task2.AddTag("001_tag_001"); this._teamTaskService.Create(task2); this.Evict(task1); this.Evict(task2); var tags = this._teamService.GetTagsByTeam(team); Assert.AreEqual(7, tags.Count()); Assert.IsTrue(tags.Any(x => x == "程序设计")); Assert.IsTrue(tags.Any(x => x == ".NET")); Assert.IsTrue(tags.Any(x => x == "ASP.NET")); Assert.IsTrue(tags.Any(x => x == "001_Tag_001")); Assert.IsTrue(tags.Any(x => x == "Mono")); Assert.IsTrue(tags.Any(x => x == "JAVA")); Assert.IsTrue(tags.Any(x => x == "JAVA.NET")); }
public void GetTasksByKeyTest() { var account = CreateAccount(); var team = CreateSampleTeam(); var member = AddSampleMemberToTeam(account, team); var teamTask1 = new Task(member, team); teamTask1.SetSubject(".NET 4.5 researching"); teamTask1.SetBody("Research what is new in .NET 4.5, and is there any problems to upgrade to .NET4.5"); teamTask1.MarkAsInCompleted(); var teamTask2 = new Task(member, team); teamTask2.SetSubject("Compare .NET and Java platform."); teamTask2.SetBody("Compare the most important differences between .NET and java platform."); teamTask2.MarkAsInCompleted(); var teamTask3 = new Task(member, team); teamTask3.SetSubject("A sample task to test GetTasksByKey interface."); teamTask3.AddComment(member, ".net"); teamTask3.AddComment(member, ".net"); teamTask3.AddComment(member, "java"); teamTask3.AddComment(member, "other"); teamTask3.MarkAsCompleted(); this._teamTaskService.Create(teamTask1); this._teamTaskService.Create(teamTask2); this._teamTaskService.Create(teamTask3); var tasks = this._teamTaskService.GetTasksByKey(team, ".NET"); var incompletedTasks = this._teamTaskService.GetIncompletedTasksByKey(team, ".NET"); Assert.AreEqual(3, tasks.Count()); Assert.IsTrue(tasks.Any(x => x.ID == teamTask1.ID)); Assert.IsTrue(tasks.Any(x => x.ID == teamTask2.ID)); Assert.IsTrue(tasks.Any(x => x.ID == teamTask3.ID)); Assert.AreEqual(2, incompletedTasks.Count()); Assert.IsTrue(incompletedTasks.Any(x => x.ID == teamTask1.ID)); Assert.IsTrue(incompletedTasks.Any(x => x.ID == teamTask2.ID)); tasks = this._teamTaskService.GetTasksByKey(team, "JAVA"); incompletedTasks = this._teamTaskService.GetIncompletedTasksByKey(team, "JAVA"); Assert.AreEqual(2, tasks.Count()); Assert.IsTrue(tasks.Any(x => x.ID == teamTask2.ID)); Assert.IsTrue(tasks.Any(x => x.ID == teamTask3.ID)); Assert.AreEqual(1, incompletedTasks.Count()); Assert.IsTrue(incompletedTasks.Any(x => x.ID == teamTask2.ID)); tasks = this._teamTaskService.GetTasksByKey(team, "OTHER"); incompletedTasks = this._teamTaskService.GetIncompletedTasksByKey(team, "OTHER"); Assert.AreEqual(1, tasks.Count()); Assert.IsTrue(tasks.Any(x => x.ID == teamTask3.ID)); Assert.AreEqual(0, incompletedTasks.Count()); tasks = this._teamTaskService.GetTasksByKey(team, "Not Exist Key"); incompletedTasks = this._teamTaskService.GetIncompletedTasksByKey(team, "Not Exist Key"); Assert.AreEqual(0, tasks.Count()); Assert.AreEqual(0, incompletedTasks.Count()); tasks = this._teamTaskService.GetTasksByKey(team, null); incompletedTasks = this._teamTaskService.GetIncompletedTasksByKey(team, null); Assert.AreEqual(0, tasks.Count()); Assert.AreEqual(0, incompletedTasks.Count()); tasks = this._teamTaskService.GetTasksByKey(team, string.Empty); incompletedTasks = this._teamTaskService.GetIncompletedTasksByKey(team, string.Empty); Assert.AreEqual(0, tasks.Count()); Assert.AreEqual(0, incompletedTasks.Count()); tasks = this._teamTaskService.GetTasksByKey(team, " "); incompletedTasks = this._teamTaskService.GetIncompletedTasksByKey(team, " "); Assert.AreEqual(0, tasks.Count()); Assert.AreEqual(0, incompletedTasks.Count()); }
public void GetTasksTest() { var account1 = this.CreateAccount(); var account2 = this.CreateAccount(); var team = CreateSampleTeam(); var member1 = AddSampleMemberToTeam(account1, team); var member2 = AddSampleMemberToTeam(account2, team); var project1 = AddSampleProjectToTeam(team); var project2 = AddSampleProjectToTeam(team); var teamTask1 = new Task(member1, team); teamTask1.AssignTo(member2); teamTask1.MarkAsCompleted(); teamTask1.AddToProject(project1); var teamTask2 = new Task(member2, team); teamTask2.AssignTo(member1); teamTask2.MarkAsCompleted(); teamTask2.AddToProject(project2); var teamTask3 = new Task(member1, team); teamTask3.AssignTo(member1); teamTask3.AddToProject(project1); this._teamTaskService.Create(teamTask1); this._teamTaskService.Create(teamTask2); this._teamTaskService.Create(teamTask3); var member1Tasks = this._teamTaskService.GetTasksByMember(member1); Assert.AreEqual(2, member1Tasks.Count()); Assert.IsTrue(member1Tasks.Any(x => x.ID == teamTask2.ID)); Assert.IsTrue(member1Tasks.Any(x => x.ID == teamTask3.ID)); var member2Tasks = this._teamTaskService.GetTasksByMember(member2); Assert.AreEqual(1, member2Tasks.Count()); Assert.IsTrue(member2Tasks.Any(x => x.ID == teamTask1.ID)); var incompletedMember1Tasks = this._teamTaskService.GetIncompletedTasksByMember(member1); Assert.AreEqual(1, incompletedMember1Tasks.Count()); Assert.IsTrue(incompletedMember1Tasks.Any(x => x.ID == teamTask3.ID)); var incompletedMember2Tasks = this._teamTaskService.GetIncompletedTasksByMember(member2); Assert.AreEqual(0, incompletedMember2Tasks.Count()); var teamTasks1OfCreatorOrAssignee = this._teamTaskService.GetTasksByAccount(team, account1); Assert.AreEqual(3, teamTasks1OfCreatorOrAssignee.Count()); Assert.IsTrue(teamTasks1OfCreatorOrAssignee.Any(x => x.ID == teamTask1.ID)); Assert.IsTrue(teamTasks1OfCreatorOrAssignee.Any(x => x.ID == teamTask2.ID)); Assert.IsTrue(teamTasks1OfCreatorOrAssignee.Any(x => x.ID == teamTask3.ID)); var teamTasks2OfCreatorOrAssignee = this._teamTaskService.GetTasksByAccount(team, account2); Assert.AreEqual(2, teamTasks2OfCreatorOrAssignee.Count()); Assert.IsTrue(teamTasks2OfCreatorOrAssignee.Any(x => x.ID == teamTask1.ID)); Assert.IsTrue(teamTasks2OfCreatorOrAssignee.Any(x => x.ID == teamTask2.ID)); var incompletedTeamTasks1OfCreatorOrAssignee = this._teamTaskService.GetIncompletedTasksByAccount(team, account1); Assert.AreEqual(1, incompletedTeamTasks1OfCreatorOrAssignee.Count()); Assert.IsTrue(incompletedTeamTasks1OfCreatorOrAssignee.Any(x => x.ID == teamTask3.ID)); var incompletedTeamTasks2OfCreatorOrAssignee = this._teamTaskService.GetIncompletedTasksByAccount(team, account2); Assert.AreEqual(0, incompletedTeamTasks2OfCreatorOrAssignee.Count()); var project1Tasks = this._teamTaskService.GetTasksByProject(project1); Assert.AreEqual(2, project1Tasks.Count()); Assert.IsTrue(project1Tasks.Any(x => x.ID == teamTask1.ID)); Assert.IsTrue(project1Tasks.Any(x => x.ID == teamTask3.ID)); var project2Tasks = this._teamTaskService.GetTasksByProject(project2); Assert.AreEqual(1, project2Tasks.Count()); Assert.IsTrue(project2Tasks.Any(x => x.ID == teamTask2.ID)); var project1IncompletedTasks = this._teamTaskService.GetIncompletedTasksByProject(project1); Assert.AreEqual(1, project1IncompletedTasks.Count()); Assert.IsTrue(project1IncompletedTasks.Any(x => x.ID == teamTask3.ID)); var project2IncompletedTasks = this._teamTaskService.GetIncompletedTasksByProject(project2); Assert.AreEqual(0, project2IncompletedTasks.Count()); }
public void GetTags() { var account = this.CreateAccount(); var team = CreateSampleTeam(); var creatorMember = AddSampleMemberToTeam(account, team); var task1 = new Task(creatorMember, team); task1.AddTag("程序设计"); task1.AddTag(".NET"); task1.AddTag("ASP.NET"); task1.AddTag("001_Tag_001"); task1.MarkAsCompleted(); this._teamTaskService.Create(task1); var task2 = new Task(creatorMember, team); task2.AddTag("Mono"); task2.AddTag(".net"); task2.AddTag("JAVA"); task2.AddTag("JAVA.NET"); task2.AddTag("001_tag_001"); this._teamTaskService.Create(task2); this.Evict(task1); this.Evict(task2); var tasks = this._teamTaskService.GetTasksByTag(team, ".net"); Assert.AreEqual(2, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains(".net", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetTasksByTag(team, "java"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("java", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetTasksByTag(team, "程序设计"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("程序设计", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetTasksByTag(team, "Mono"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("Mono", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetTasksByTag(team, "001_tag_001"); Assert.AreEqual(2, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("001_tag_001", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, ".net"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains(".net", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, "java"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("java", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, "程序设计"); Assert.AreEqual(0, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("程序设计", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, "Mono"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("Mono", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, "001_tag_001"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("001_tag_001", StringComparer.OrdinalIgnoreCase))); task1 = this._teamTaskService.GetTask(task1.ID); task2 = this._teamTaskService.GetTask(task2.ID); task1.RemoveTag(".net"); task2.RemoveTag("001_tag_001"); task2.RemoveTag("JAVA"); this._teamTaskService.Update(task1); this._teamTaskService.Update(task2); this.Evict(task1); this.Evict(task2); tasks = this._teamTaskService.GetTasksByTag(team, ".net"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains(".net", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetTasksByTag(team, "java"); Assert.AreEqual(0, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("java", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetTasksByTag(team, "程序设计"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("程序设计", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetTasksByTag(team, "Mono"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("Mono", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetTasksByTag(team, "001_tag_001"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("001_tag_001", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, ".net"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains(".net", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, "java"); Assert.AreEqual(0, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("java", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, "程序设计"); Assert.AreEqual(0, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("程序设计", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, "Mono"); Assert.AreEqual(1, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("Mono", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetIncompletedTasksByTag(team, "001_tag_001"); Assert.AreEqual(0, tasks.Count()); Assert.IsFalse(!tasks.All(x => x.Tags.Contains("001_tag_001", StringComparer.OrdinalIgnoreCase))); tasks = this._teamTaskService.GetTasksByTag(team, null); var incompletedTasks = this._teamTaskService.GetIncompletedTasksByTag(team, null); Assert.AreEqual(0, tasks.Count()); Assert.AreEqual(0, incompletedTasks.Count()); tasks = this._teamTaskService.GetTasksByTag(team, string.Empty); incompletedTasks = this._teamTaskService.GetIncompletedTasksByTag(team, string.Empty); Assert.AreEqual(0, tasks.Count()); Assert.AreEqual(0, incompletedTasks.Count()); tasks = this._teamTaskService.GetTasksByTag(team, " "); incompletedTasks = this._teamTaskService.GetIncompletedTasksByTag(team, " "); Assert.AreEqual(0, tasks.Count()); Assert.AreEqual(0, incompletedTasks.Count()); }