Beispiel #1
0
        public void ChangeContactAttendanceStatusValidUserAndValidEventReturnResultOfSucessful()
        {
            IEvent evt = new ScheduledEvent()
            {
                ID = Guid.NewGuid(), Name = "Test Update", Active = true
            };
            IEnumerable <IEvent> eventList = new List <IEvent>()
            {
                evt
            };

            Guid eventId = evt.ID;
            Guid userId  = Guid.NewGuid();

            EventRepositoryMock <ScheduledEvent> .ThrowException = false;
            EventRepositoryMock <ScheduledEvent> .IsGuest        = true;
            EventRepositoryMock <ScheduledEvent> .ListOfEvents   = eventList;

            try
            {
                using (EventFacade facade = new EventFacade(mockConnect.Object))
                {
                    facade.ChangeContactAttendanceStatus(userId, eventId, EventAttendantsStatus.Going);
                }
            }
            catch (Exception ex)
            {
                Assert.Fail("Unexpected exception escaped call to FindEvent method in the EventFacade. Exception: {0}", ex.Message);
            }
            Assert.Pass();
        }
Beispiel #2
0
        public void ChangeContactAttendanceStatusWhenExceptionWithExceptionCaughtAndHandled()
        {
            IEvent evt = new ScheduledEvent()
            {
                ID = Guid.NewGuid(), Name = "Test Update", Active = true
            };
            IEnumerable <IEvent> eventList = new List <IEvent>()
            {
                evt
            };

            Guid eventId = Guid.NewGuid();
            Guid userId  = Guid.NewGuid();

            EventRepositoryMock <ScheduledEvent> .ThrowException = true;
            EventRepositoryMock <ScheduledEvent> .IsGuest        = false;
            EventRepositoryMock <ScheduledEvent> .ListOfEvents   = eventList;

            try
            {
                using (EventFacade facade = new EventFacade(mockConnect.Object))
                {
                    facade.ChangeContactAttendanceStatus(userId, eventId, EventAttendantsStatus.Going);
                }
            }
            catch (Exception)
            {
                Assert.Pass();
            }
            Assert.Fail("An exception from the Repository should have been thrown.");
        }
Beispiel #3
0
        public void ChangeContactAttendanceStatusWithNoMatchingEventReturnResultOfRecordNotFound()
        {
            IEvent evt     = null;
            Guid   eventId = Guid.NewGuid();
            Guid   userId  = Guid.NewGuid();

            EventRepositoryMock <ScheduledEvent> .ThrowException = false;
            EventRepositoryMock <ScheduledEvent> .IsGuest        = false;
            EventRepositoryMock <ScheduledEvent> .ListOfEvents   = new List <IEvent>();
            EventRepositoryMock <ScheduledEvent> .Evt            = evt;

            try
            {
                using (EventFacade facade = new EventFacade(mockConnect.Object))
                {
                    facade.ChangeContactAttendanceStatus(userId, eventId, EventAttendantsStatus.Going);
                    Assert.Fail("An EventException should have been thrown.");
                }
            }
            catch (EventException)
            {
                Assert.Pass();
            }
            catch (Exception ex)
            {
                Assert.Fail("Unexpected exception escaped call to FindEvent method in the EventFacade. Exception: {0}", ex.Message);
            }
        }
Beispiel #4
0
        public void ChangeContactAttendanceStatusWithStatusOfCancelReturnInvalidEventStatusException()
        {
            Guid eventId = Guid.NewGuid();
            Guid userId  = Guid.NewGuid();

            EventRepositoryMock <ScheduledEvent> .ThrowException = false;
            EventRepositoryMock <ScheduledEvent> .IsGuest        = true;

            try
            {
                using (EventFacade facade = new EventFacade(mockConnect.Object))
                {
                    facade.ChangeContactAttendanceStatus(userId, eventId, EventAttendantsStatus.Cancel);
                    Assert.Fail("An InvalidEventStatusException should have been thrown.");
                }
            }
            catch (InvalidEventStatusException)
            {
                Assert.Pass();
            }
            catch (Exception ex)
            {
                Assert.Fail("Unexpected exception escaped call to FindEvent method in the EventFacade. Exception: {0}", ex.Message);
            }
        }
Beispiel #5
0
        //Update Contacts attendents status
        public APIResponse Post(Guid userId, Guid eventId, EventAttendantsStatus attendStatus)
        {
            try
            {
                if (attendStatus == EventAttendantsStatus.Cancel)
                {
                    using (UserFacade userFacade = new UserFacade())
                        userFacade.CancelEvent(userId, eventId);

                    APIResponse response = new APIResponse(APIResponse.ReponseStatus.success, null);
                    return(response);
                }
                else
                {
                    using (EventFacade eventFacade = new EventFacade())
                        eventFacade.ChangeContactAttendanceStatus(userId, eventId, attendStatus);

                    APIResponse response = new APIResponse(APIResponse.ReponseStatus.success, null);
                    return(response);
                }
            }
            catch (Exception ex)
            {
                APIResponse response = new APIResponse(APIResponse.ReponseStatus.error, new { Error = ex.Message });
                return(response);
            }
        }
Beispiel #6
0
        public void ChangeContactAttendanceStatusWithStatusOfCancelCheckIfSentToRepository()
        {
            Guid eventId = Guid.NewGuid();
            Guid userId  = Guid.NewGuid();

            EventRepositoryMock <ScheduledEvent> .ThrowException = false;
            EventRepositoryMock <ScheduledEvent> .IsGuest        = true;

            try
            {
                using (EventFacade facade = new EventFacade(mockConnect.Object))
                {
                    facade.ChangeContactAttendanceStatus(userId, eventId, EventAttendantsStatus.Cancel);
                }
            }
            catch (Exception)
            {
            }
            Assert.AreNotEqual(EventRepositoryMock <ScheduledEvent> .AttendStatus, EventAttendantsStatus.Cancel);
        }