Example #1
0
        public void AddRemoveCommentTest()
        {
            var account = this.CreateAccount();
            var team = CreateSampleTeam();
            var creatorMember = AddSampleMemberToTeam(account, team);
            var task = new Task(creatorMember, team);
            var memberName = RandomString();
            var memberEmail = RandomEmailString();
            var member = this._teamService.AddFullMember(memberName, memberEmail, team);

            var comment1 = RandomString();
            var comment2 = RandomString();
            task.AddComment(member, comment1);
            task.AddComment(member, comment2);

            this._teamTaskService.Create(task);
            this.Evict(task);
            task = this._teamTaskService.GetTask(task.ID);

            Assert.AreEqual(2, task.Comments.Count());
            Assert.IsTrue(task.Comments.Any(x => x.Body == comment1));
            Assert.IsTrue(task.Comments.Any(x => x.Body == comment2));

            task.RemoveComment(task.Comments.Single(x => x.Body == comment1));
            this._teamTaskService.Update(task);
            this.Evict(task);
            task = this._teamTaskService.GetTask(task.ID);
            Assert.AreEqual(1, task.Comments.Count());
            Assert.IsTrue(task.Comments.Any(x => x.Body == comment2));

            task.RemoveComment(task.Comments.First());
            this._teamTaskService.Update(task);
            this.Evict(task);
            task = this._teamTaskService.GetTask(task.ID);
            Assert.AreEqual(0, task.Comments.Count());
        }
Example #2
0
        public void ClearCommentCreatorsAfterTeamMemberRemovedTest()
        {
            var account = CreateAccount();
            var team = CreateSampleTeam();
            var creatorMember = AddSampleMemberToTeam(account, team);
            var member = AddSampleMemberToTeam(team);
            var task = new Task(creatorMember, team);
            var comment = RandomString();
            task.AddComment(member, comment);
            this._teamTaskService.Create(task);

            this.Evict(member);
            this.Evict(team);
            this.Evict(task);
            this.Evict(comment);

            team = _teamService.GetTeam(team.ID);
            member = team.GetMember(member.ID);
            task = this._teamTaskService.GetTask(task.ID);
            Assert.IsNotNull(task);
            Assert.AreEqual(1, task.Comments.Count());
            Assert.IsTrue(task.Comments.Any(x => x.Body == comment && x.Creator.ID == member.ID));

            this._teamService.RemoveMember(member, team);

            this.Evict(task);
            this.Evict(comment);

            task = this._teamTaskService.GetTask(task.ID);
            Assert.IsNotNull(task);
            Assert.AreEqual(1, task.Comments.Count());
            Assert.IsTrue(task.Comments.Any(x => x.Body == comment && x.Creator == null));
        }
Example #3
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());
        }