Example #1
0
        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"));
        }
Example #2
0
        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());
        }
Example #3
0
        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());
        }
Example #4
0
        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());
        }