public void AllReadyTaskThatHasInstanceOfActivityAndActivityHasInstanceOfCampaignAndCampaignHasInstanceOfOrganizerAndOrganizerIdEqualsUserIdIsEditable()
        {
            const string userId = "1";

            var claimsPrincipal = new ClaimsPrincipal();

            claimsPrincipal.AddIdentity(new ClaimsIdentity(new List <Claim>
            {
                new Claim(ClaimTypes.NameIdentifier, "1"),
                new Claim(AllReady.Security.ClaimTypes.UserType, Enum.GetName(typeof(UserType), UserType.BasicUser))
            }));

            var allReadyTask = new AllReadyTask {
                Activity = new Activity {
                    Campaign = new Campaign {
                        Organizer = new ApplicationUser {
                            Id = userId
                        }
                    }
                }
            };

            var sut    = new DetermineIfATaskIsEditable();
            var result = sut.For(claimsPrincipal, allReadyTask);

            Assert.True(result);
        }
Esempio n. 2
0
        public void VolunteerTaskThatHasInstanceOfEventAndEventHasInstanceOfCampaignAndCampaignHasInstanceOfOrganizerAndOrganizerIdEqualsUserIdIsEditable()
        {
            const string userId = "1";

            var claimsPrincipal = new ClaimsPrincipal();

            claimsPrincipal.AddIdentity(new ClaimsIdentity(new List <Claim>
            {
                new Claim(ClaimTypes.NameIdentifier, "1"),
                new Claim(AllReady.Security.ClaimTypes.UserType, nameof(UserType.BasicUser))
            }));

            var volunteerTask = new VolunteerTask {
                Event = new Event {
                    Campaign = new Campaign {
                        Organizer = new ApplicationUser {
                            Id = userId
                        }
                    }
                }
            };

            var sut    = new DetermineIfATaskIsEditable();
            var result = sut.For(claimsPrincipal, volunteerTask, UserManager);

            Assert.True(result);
        }
        public void OrgAdminsCanEditAllReadyTasks()
        {
            var claimsPrincipal = new ClaimsPrincipal();

            claimsPrincipal.AddIdentity(new ClaimsIdentity(new List <Claim>
            {
                new Claim(ClaimTypes.NameIdentifier, "1"),
                new Claim(AllReady.Security.ClaimTypes.UserType, Enum.GetName(typeof(UserType), UserType.OrgAdmin))
            }));

            var sut    = new DetermineIfATaskIsEditable();
            var result = sut.For(claimsPrincipal, null);

            Assert.True(result);
        }