public async Task RemoveTeamMemberSendsOrganizationIdQueryWithCorrectIntineraryId()
        {
            var itineraryId  = It.IsAny <int>();
            var mockMediator = new Mock <IMediator>();

            var sut = new ItineraryController(mockMediator.Object, MockSuccessValidation().Object);

            await sut.RemoveTeamMember(itineraryId, It.IsAny <int>());

            mockMediator.Verify(x => x.SendAsync(It.Is <OrganizationIdQuery>(y => y.ItineraryId == itineraryId)), Times.Once);
        }
示例#2
0
        public async Task RemoveTeamMemberReturnsHttpUnauthorizedWhenUserIsNotOrgAdmin()
        {
            var mockMediator = new Mock <IMediator>();

            mockMediator.Setup(x => x.SendAsync(It.IsAny <OrganizationIdQuery>())).ReturnsAsync(1);

            var sut = new ItineraryController(mockMediator.Object, null);

            sut.MakeUserNotAnOrgAdmin();

            Assert.IsType <UnauthorizedResult>(await sut.RemoveTeamMember(It.IsAny <int>(), It.IsAny <int>()));
        }
        public async Task RemoveTeamMemberReturnsHttpUnauthorizedWhenOrganizationIdIsZero()
        {
            var itineraryId  = It.IsAny <int>();
            var taskSignupId = It.IsAny <int>();

            var mockMediator = new Mock <IMediator>();

            mockMediator.Setup(x => x.SendAsync(It.IsAny <OrganizationIdQuery>())).ReturnsAsync(0);

            var sut = new ItineraryController(mockMediator.Object, MockSuccessValidation().Object);

            Assert.IsType <UnauthorizedResult>(await sut.RemoveTeamMember(itineraryId, taskSignupId));
        }
示例#4
0
        public async Task RemoveTeamMemberRedirectsToCorrectActionWithCorrectRouteValuesWhenOrganizationIdIsNotZero_AndUserIsOrgAdmin()
        {
            const int orgId = 1;

            var mockMediator = new Mock <IMediator>();

            mockMediator.Setup(x => x.SendAsync(It.IsAny <OrganizationIdQuery>())).ReturnsAsync(orgId);

            var sut = new ItineraryController(mockMediator.Object, null);

            sut.MakeUserAnOrgAdmin(orgId.ToString());

            await sut.RemoveTeamMember(It.IsAny <int>(), It.IsAny <int>());

            //TODO: this assertion does not assert what the title of this unit test says it does. Please fix to assert that the redirect action and route values are correct
            //mockMediator.Verify(x => x.SendAsync(It.Is<RemoveTeamMemberCommand>(y => y.TaskSignupId == taskSignupId)), Times.Once);
        }
示例#5
0
        public async Task RemoveTeamMemberSendsRemoveTeamMemberCommandWithCorrectTaskSignupIdWhenOrganizationIsNotZero_AndUserIsOrgAdmin()
        {
            const int taskSignupId = 1;
            const int orgId        = 1;

            var mockMediator = new Mock <IMediator>();

            mockMediator.Setup(x => x.SendAsync(It.IsAny <OrganizationIdQuery>())).ReturnsAsync(orgId);

            var sut = new ItineraryController(mockMediator.Object, null);

            sut.MakeUserAnOrgAdmin(orgId.ToString());

            await sut.RemoveTeamMember(It.IsAny <int>(), taskSignupId);

            mockMediator.Verify(x => x.SendAsync(It.Is <RemoveTeamMemberCommand>(y => y.TaskSignupId == taskSignupId)), Times.Once);
        }
        public async Task RemoveTeamMemberReturnsHttpUnauthorizedWhenUserIsNotOrgAdmin()
        {
            var itineraryId  = It.IsAny <int>();
            var taskSignupId = It.IsAny <int>();

            var mockMediator = new Mock <IMediator>();

            mockMediator.Setup(x => x.SendAsync(It.IsAny <OrganizationIdQuery>())).ReturnsAsync(1);

            var sut = new ItineraryController(mockMediator.Object, MockSuccessValidation().Object);

            sut.SetClaims(new List <Claim>
            {
                new Claim(AllReady.Security.ClaimTypes.UserType, UserType.BasicUser.ToString())
            });

            Assert.IsType <UnauthorizedResult>(await sut.RemoveTeamMember(itineraryId, taskSignupId));
        }
        public async Task RemoveTeamMemberRedirectsToCorrectActionWithCorrectRouteValuesWhenOrganizationIdIsNotZero_AndUserIsOrgAdmin()
        {
            var itineraryId  = It.IsAny <int>();
            var taskSignupId = It.IsAny <int>();

            var mockMediator = new Mock <IMediator>();

            mockMediator.Setup(x => x.SendAsync(It.IsAny <OrganizationIdQuery>())).ReturnsAsync(1);

            var sut = new ItineraryController(mockMediator.Object, MockSuccessValidation().Object);

            sut.SetClaims(new List <Claim>
            {
                new Claim(AllReady.Security.ClaimTypes.UserType, UserType.OrgAdmin.ToString()),
                new Claim(AllReady.Security.ClaimTypes.Organization, "1")
            });

            await sut.RemoveTeamMember(itineraryId, taskSignupId);

            mockMediator.Verify(x => x.SendAsync(It.Is <RemoveTeamMemberCommand>(y => y.TaskSignupId == taskSignupId)), Times.Once);
        }