Exemplo n.º 1
0
        public void UpdateTeamModifiesTeamToList()
        {
            ITeamRepository repository = new MemoryTeamRepositoryTest();
            var             controller = GetController(repository);

            var         teams    = (IEnumerable <Team>)(controller.GetAllTeams() as ObjectResult).Value;
            List <Team> original = new List <Team>(teams);

            Guid id     = Guid.NewGuid();
            Team t      = new Team("sample", id);
            var  result = controller.CreateTeam(t);

            Team newTeam = new Team("sample2", id);

            controller.UpdateTeam(newTeam, id);

            var         newTeamsRaw = (IEnumerable <Team>)(controller.GetAllTeams() as ObjectResult).Value;
            List <Team> newTeams    = new List <Team>(newTeamsRaw);
            var         sampleTeam  = newTeams.FirstOrDefault(target => target.Name == "sample");

            Assert.Null(sampleTeam);

            Team retrievedTeam = (Team)(controller.GetTeam(id) as ObjectResult).Value;

            Assert.Equal(retrievedTeam.Name, "sample2");
        }
        public void UpdateMemberOverwrites()
        {
            ITeamRepository   repository = new MemoryTeamRepositoryTest();
            MembersController controller = GetController(repository);

            Guid teamId    = Guid.NewGuid();
            var  team      = new Team("TestTeam", teamId);
            Team debugTeam = repository.Add(team);

            Guid memberId  = Guid.NewGuid();
            var  newMember = new Member(memberId)
            {
                FirstName = "Jim",
                LastName  = "Smith"
            };

            controller.CreateMember(newMember, teamId);

            team = repository.Get(teamId);

            var updatedMember = new Member(memberId)
            {
                FirstName = "Bob",
                LastName  = "Jones"
            };

            controller.UpdateMember(updatedMember, teamId, memberId);

            team = repository.Get(teamId);
            Member testMember = team.Members.First(m => m.Id == memberId);

            Assert.Equal(testMember.FirstName, "Bob");
            Assert.Equal(testMember.LastName, "Jones");
        }
        public void GetMembersReturnsMembers()
        {
            ITeamRepository   repository = new MemoryTeamRepositoryTest();
            MembersController controller = GetController(repository);

            Guid teamId    = Guid.NewGuid();
            var  team      = new Team("TestTeam", teamId);
            Team debugTeam = repository.Add(team);

            Guid firstMemberId = Guid.NewGuid();
            var  newMember     = new Member(firstMemberId);

            newMember.FirstName = "Jim";
            newMember.LastName  = "Smith";
            controller.CreateMember(newMember, teamId);

            Guid secondMemberId = Guid.NewGuid();

            newMember           = new Member(secondMemberId);
            newMember.FirstName = "John";
            newMember.LastName  = "Doe";
            controller.CreateMember(newMember, teamId);

            var members = (ICollection <Member>)(controller.GetMembers(teamId) as ObjectResult).Value;

            Assert.Equal(2, members.Count());
            Assert.NotNull(members.First(m => m.Id == firstMemberId).Id);
            Assert.NotNull(members.First(m => m.Id == secondMemberId).Id);
        }
        public async void GetNonExistantTeamReturnsNotFound()
        {
            ITeamRepository   repository = new MemoryTeamRepositoryTest();
            MembersController controller = GetController(repository);

            IActionResult result = await controller.GetMember(Guid.NewGuid(), Guid.NewGuid());

            Assert.True(result is NotFoundResult);
        }
Exemplo n.º 5
0
        public void GetNonExistentTeamReturnsNotFound()
        {
            ITeamRepository repository = new MemoryTeamRepositoryTest();
            var             controller = GetController(repository);

            Guid id     = Guid.NewGuid();
            var  result = controller.GetTeam(id);

            Assert.True(result is NotFoundResult);
        }
Exemplo n.º 6
0
        public void QueryTeamListReturnsCorrectTeams()
        {
            ITeamRepository repository = new MemoryTeamRepositoryTest();
            var             controller = GetController(repository);

            var         rawTeams = (IEnumerable <Team>)(controller.GetAllTeams() as ObjectResult).Value;
            List <Team> teams    = new List <Team>(rawTeams);

            Assert.Equal(teams.Count, 2);
            Assert.Equal(teams[0].Name, "one");
            Assert.Equal(teams[1].Name, "two");
        }
        public void GetMembersForNewTeamIsEmpty()
        {
            ITeamRepository   repository = new MemoryTeamRepositoryTest();
            MembersController controller = GetController(repository);

            Guid teamId    = Guid.NewGuid();
            var  team      = new Team("TestTeam", teamId);
            Team debugTeam = repository.Add(team);

            var members = (ICollection <Member>)(controller.GetMembers(teamId) as ObjectResult).Value;

            Assert.Empty(members);
        }
        public void CreateMembertoNonexistantTeamReturnsNotFound()
        {
            ITeamRepository   repository = new MemoryTeamRepositoryTest();
            MembersController controller = GetController(repository);

            Guid teamId = Guid.NewGuid();

            Guid          newMemberId = Guid.NewGuid();
            var           newMember   = new Member(newMemberId);
            IActionResult result      = controller.CreateMember(newMember, teamId);

            Assert.True(result is NotFoundResult);
        }
        public async void GetNonExistantMemberReturnsNotFound()
        {
            ITeamRepository   repository = new MemoryTeamRepositoryTest();
            MembersController controller = GetController(repository);

            Guid teamId    = Guid.NewGuid();
            var  team      = new Team("TestTeam", teamId);
            Team debugTeam = repository.Add(team);

            IActionResult result = await controller.GetMember(teamId, Guid.NewGuid());

            Assert.True(result is NotFoundResult);
        }
Exemplo n.º 10
0
        public void GetTeamRetrievesTeam()
        {
            ITeamRepository repository = new MemoryTeamRepositoryTest();
            var             controller = GetController(repository);

            string sampleName = "sample";
            Guid   id         = Guid.NewGuid();
            Team   sampleTeam = new Team(sampleName, id);

            controller.CreateTeam(sampleTeam);

            Team retrievedTeam = (Team)(controller.GetTeam(id) as ObjectResult).Value;

            Assert.Equal(retrievedTeam.Name, sampleName);
            Assert.Equal(retrievedTeam.Id, id);
        }
Exemplo n.º 11
0
        public void UpdateNonExistentTeamReturnsNotFound()
        {
            ITeamRepository repository = new MemoryTeamRepositoryTest();
            var             controller = GetController(repository);

            var         teams    = (IEnumerable <Team>)(controller.GetAllTeams() as ObjectResult).Value;
            List <Team> original = new List <Team>(teams);

            Team someTeam = new Team("Some Team", Guid.NewGuid());

            controller.CreateTeam(someTeam);

            Guid newTeamId = Guid.NewGuid();
            Team newTeam   = new Team("New Team", newTeamId);
            var  result    = controller.UpdateTeam(newTeam, newTeamId);

            Assert.True(result is NotFoundResult);
        }
        public void CreateMemberAddsTeamToList()
        {
            ITeamRepository   repository = new MemoryTeamRepositoryTest();
            MembersController controller = GetController(repository);

            Guid teamId = Guid.NewGuid();
            var  team   = new Team("TestController", teamId);

            repository.Add(team);

            Guid newMemberId = Guid.NewGuid();
            var  newMember   = new Member(newMemberId);

            controller.CreateMember(newMember, teamId);

            team = repository.Get(teamId);
            Assert.True(team.Members.Contains(newMember));
        }
        public async void GetExistingMemberReturnsMember()
        {
            ITeamRepository   repository = new MemoryTeamRepositoryTest();
            MembersController controller = GetController(repository);

            Guid teamId    = Guid.NewGuid();
            var  team      = new Team("TestTeam", teamId);
            Team debugTeam = repository.Add(team);

            Guid memberId  = Guid.NewGuid();
            var  newMember = new Member(memberId);

            newMember.FirstName = "Jim";
            newMember.LastName  = "Smith";
            controller.CreateMember(newMember, teamId);

            Member member = (Member)(await controller.GetMember(teamId, memberId) as ObjectResult).Value;

            Assert.Equal(member.Id, newMember.Id);
        }
Exemplo n.º 14
0
        public void CreateTeamAddsTeamToList()
        {
            ITeamRepository repository = new MemoryTeamRepositoryTest();
            var             controller = GetController(repository);

            var         teams    = (IEnumerable <Team>)(controller.GetAllTeams() as ObjectResult).Value;
            List <Team> original = new List <Team>(teams);

            Team t      = new Team("sample");
            var  result = controller.CreateTeam(t);

            //TODO: also assert that the destination URL of the new team reflects the team's GUID
            Assert.Equal((result as ObjectResult).StatusCode, 201);

            var         actionResult = controller.GetAllTeams() as ObjectResult;
            var         newTeamsRaw  = (IEnumerable <Team>)(controller.GetAllTeams() as ObjectResult).Value;
            List <Team> newTeams     = new List <Team>(newTeamsRaw);

            Assert.Equal(newTeams.Count, original.Count + 1);
            var sampleTeam = newTeams.FirstOrDefault(target => target.Name == "sample");

            Assert.NotNull(sampleTeam);
        }
Exemplo n.º 15
0
        public void DeleteTeamRemovesFromList()
        {
            ITeamRepository repository = new MemoryTeamRepositoryTest();
            var             controller = GetController(repository);

            var teams = (IEnumerable <Team>)(controller.GetAllTeams() as ObjectResult).Value;
            int ct    = teams.Count();

            string sampleName = "sample";
            Guid   id         = Guid.NewGuid();
            Team   sampleTeam = new Team(sampleName, id);

            controller.CreateTeam(sampleTeam);

            teams      = (IEnumerable <Team>)(controller.GetAllTeams() as ObjectResult).Value;
            sampleTeam = teams.FirstOrDefault(target => target.Name == sampleName);
            Assert.NotNull(sampleTeam);

            controller.DeleteTeam(id);

            teams      = (IEnumerable <Team>)(controller.GetAllTeams() as ObjectResult).Value;
            sampleTeam = teams.FirstOrDefault(target => target.Name == sampleName);
            Assert.Null(sampleTeam);
        }
        public void UpdateMembertoNonexistantMemberReturnsNoMatch()
        {
            ITeamRepository   repository = new MemoryTeamRepositoryTest();
            MembersController controller = GetController(repository);

            Guid teamId = Guid.NewGuid();
            var  team   = new Team("TestController", teamId);

            repository.Add(team);

            Guid memberId  = Guid.NewGuid();
            var  newMember = new Member(memberId);

            newMember.FirstName = "Jim";
            controller.CreateMember(newMember, teamId);

            Guid nonMatchedGuid = Guid.NewGuid();
            var  updatedMember  = new Member(nonMatchedGuid);

            updatedMember.FirstName = "Bob";
            IActionResult result = controller.UpdateMember(updatedMember, teamId, nonMatchedGuid);

            Assert.True(result is NotFoundResult);
        }