Esempio n. 1
0
        public UserData(Member member)
        {
            isAuthenticated = false;
            if (member == null) return;

            isAuthenticated = true;
            this.member = member;
        }
Esempio n. 2
0
        public void Add_should_call_Add_on_MemberRepository()
        {
            var member = new Member();
            var service = GetService();

            service.Add(member);

            memberRepository.AssertWasCalled(x => x.Add(member));
        }
Esempio n. 3
0
        public void From_should_add_role_based_on_UserType()
        {
            // Arrange
            var member = new Member { UserType = UserType.Member };

            // Act
            var identity = new UserIdentity().From(member);

            // Assert
            Assert.That(identity.Roles.Contains("Member"));
        }
Esempio n. 4
0
        public void MemberType_should_default_to_Member()
        {
            // Arrange

            // Act
            var member = new Member();

            // Assert
            Assert.That(member.UserType, Is.EqualTo(UserType.Member));
            Assert.That(member.IsAdministrator, Is.False);
        }
Esempio n. 5
0
        public void IsAdministrator_should_return_true_when_UserType_is_Administrator()
        {
            // Arrange
            var member = new Member();

            // Act
            member.UserType = UserType.Administrator;

            // Assert
            Assert.That(member.IsAdministrator, Is.True);
        }
Esempio n. 6
0
        public void AddAttendee_should_add_the_meeting_to_the_list_of_attended_meetings_for_the_member()
        {
            // Arrange
            var meeting = new Meeting();
            var member = new Member();

            // Act
            meeting.AddAttendee(member);

            // Assert
            Assert.That(member.AttendedMeetings.Contains(meeting));
            Assert.That(member.AttendedMeetings[0].Attendees.OfType<MemberAttendee>().Any(attendee=>attendee.Member == member));
        }
Esempio n. 7
0
        public void AddAttendee_should_accept_a_user_to_be_added()
        {
            // Arrange
            var meeting = new Meeting();
            var member = new Member();

            // Act
            var attendee = meeting.AddAttendee(member) as MemberAttendee;

            // Assert
            Assert.That(attendee, Is.Not.Null);
            Assert.That(attendee.Meeting, Is.EqualTo(meeting));
            Assert.That(attendee.Member, Is.EqualTo(member));
        }
Esempio n. 8
0
        public void AddAttendee_should_have_the_original_dateRegistered_when_promoted()
        {
            // Arrange
            var stubMeeting = new Meeting();
            const string email = "*****@*****.**";
            const string firstname = "FirstName";
            const string lastname = "LastName";
            var stubMember = new Member() { Email = email };

            // Act
            var firstAttendee = stubMeeting.AddGuestAttendee(email, firstname, lastname); // first, add the guest
            var secondAttendee = stubMeeting.AddAttendee(stubMember) as PromotedAttendee; // second, add the member with the same email

            // Assert
            Assert.That(secondAttendee.DateRegistered, Is.EqualTo(firstAttendee.DateRegistered));
        }
Esempio n. 9
0
        public UserIdentity From(Member member)
        {
            MemberId = member.MemberId;
            Name = member.Username;
            Email = member.Email;
            First = member.FirstName;
            Last = member.LastName;

            var type = member.UserType;
            while(type >= 0)
            {
                roles.Add(type.ToString());
                type--;
            }

            return this;
        }
Esempio n. 10
0
        public void AddMember_can_successfully_save_a_Member()
        {
            // Arrange
            var memberRepository = new MemberRepository(activeSessionManager);

            var member = new Member()
                             {
                                 Email = "*****@*****.**",
                                 FirstName = "Tim",
                                 LastName = "Barcz",
                                 Username = "******",
                                 Password = "******",
                                 PasswordSalt = "sodium chloride"
                             };
            // Act
            var returnedMemberId = memberRepository.Add(member);

            // Assert
            Assert.That(member.MemberId, Is.GreaterThan(0));
            Assert.That(member.MemberId, Is.EqualTo(returnedMemberId));
        }
Esempio n. 11
0
 public void Update(Member member)
 {
     xmlRepository.Update(member, member.MemberId);
 }
Esempio n. 12
0
        public void AddAttendee_should_not_allow_a_guest_to_register_when_user_with_that_email_has_already_registered()
        {
            // Arrange
            var stubMeeting = new Meeting();
            const string email = "*****@*****.**";
            const string firstname = "FirstName";
            const string lastname = "LastName";
            var stubMember = new Member() {Email = email};

            // Act
            stubMeeting.AddAttendee(stubMember); // first, add the member
            stubMeeting.AddGuestAttendee(email, firstname, lastname); // second, add the guest with the same email

            // Assert
            // no assert here - the assert is the ExpectedException
        }
Esempio n. 13
0
        public ActionResult Register(RegistrationData registrationData)
        {
            var validationRunner = new ValidatorRunner(new CachedValidationRegistry());

            if (!validationRunner.IsValid(registrationData))
            {
                // there were errors, report them back to the user
                foreach (var errorMessage in validationRunner.GetErrorSummary(registrationData).ErrorMessages)
                    AddErrorMessage(errorMessage);

                TempData.Add(registrationData);
                return RedirectToAction("Register");
            }

            Member member = memberService.GetByUsername(registrationData.UserName);

            if (member != null)
            {
                userSession.PushUserMessage(FlashMessage.MessageType.Error, "A user with that username already exists, please try again");
                TempData.Add(registrationData);
                return RedirectToAction("Register");
            }

            member = new Member
                         {
                             Username = registrationData.UserName,
                             Email = registrationData.Email,
                             PasswordSalt = cryptographer.CreateSalt(),
                             FirstName = registrationData.FirstName,
                             LastName = registrationData.LastName
                         };

            member.Password = cryptographer.Hash(registrationData.Password, member.PasswordSalt);

            memberService.Add(member);

            authenticator.SignIn(member);

            return RedirectToAction("Index");
        }
Esempio n. 14
0
 public PromotedAttendee(GuestAttendee previous, Member member, Meeting meeting)
     : base(member, meeting)
 {
     datePromoted = DateTime.Now;
     this.dateRegistered = previous.DateRegistered;
 }
Esempio n. 15
0
        public void AddAttendee_should_return_an_attendee_with_a_DateRegistered_close_to_current_time()
        {
            // Arrange
            var meeting = new Meeting();
            var member = new Member();
            var currentDate = DateTime.Now;

            // Act
            var attendee = meeting.AddAttendee(member);

            // Assert
            Assert.That(attendee.DateRegistered, Is.GreaterThanOrEqualTo(currentDate));
        }
Esempio n. 16
0
        public void AddAttendee_should_promote_a_guest_registration_to_a_user_regisration_when_the_user_email_matches_a_guest_email()
        {
            // Arrange
            var stubMeeting = new Meeting();
            const string email = "*****@*****.**";
            const string firstname = "FirstName";
            const string lastname = "LastName";
            var stubMember = new Member() { Email = email };

            // Act
            var firstAttendee = stubMeeting.AddGuestAttendee(email, firstname, lastname); // first, add the guest
            var secondAttendee = stubMeeting.AddAttendee(stubMember); // second, add the member with the same email

            // Assert
            Assert.That(stubMeeting.AttendeeCount, Is.EqualTo(1));
            Assert.That(secondAttendee, Is.TypeOf(typeof(PromotedAttendee)));
        }
Esempio n. 17
0
 public int Add(Member member)
 {
     xmlRepository.Add(member, (m, id) => m.MemberId = id);
     return member.MemberId;
 }
Esempio n. 18
0
        public void AddAttendee_should_not_allow_a_user_to_be_added_twice()
        {
            // Arrange
            var meeting = new Meeting();
            var member = new Member();

            // Act
            meeting.AddAttendee(member);
            meeting.AddAttendee(member);

            // Assert
            // no assert here - the assert is the ExpectedException
        }
Esempio n. 19
0
 public void Add(Member member)
 {
     memberRepository.Add(member);
 }