コード例 #1
0
        public void AddEventInvalidRoundReturnsBadRequest()
        {
            //Setup
            var mockEventsRepo       = new Mock <IEventRepo>();
            var mockEventResultsRepo = new Mock <IEventResultsRepo>();
            var mockUserRepo         = new Mock <IUserRepo>();
            var addEvent             = new EventAddModel()
            {
                EventAge    = "21",
                EventCode   = "01",
                EventGender = "M",
                MeetId      = 1,
                Round       = "BAD ROUND"
            };

            var sut = new EventsController(mockEventsRepo.Object, mockEventResultsRepo.Object, mockUserRepo.Object);


            //Action
            var res = sut.AddEvent(addEvent);

            //Assert
            res.Should().BeOfType <BadRequestErrorMessageResult>();
            res.As <BadRequestErrorMessageResult>().Message.Should().Be("Round must be one of the following H, F, C, S, B according to the Neutral file format");
        }
コード例 #2
0
        public void AddEventInvalidGenderReturnsBadRequest()
        {
            //Setup
            var mockEventsRepo       = new Mock <IEventRepo>();
            var mockEventResultsRepo = new Mock <IEventResultsRepo>();
            var mockUserRepo         = new Mock <IUserRepo>();
            var addEvent             = new EventAddModel()
            {
                EventAge    = "21",
                EventCode   = "21",
                EventGender = "TEST FAIL",
                MeetId      = 1,
                Round       = "F"
            };

            var sut = new EventsController(mockEventsRepo.Object, mockEventResultsRepo.Object, mockUserRepo.Object);


            //Action
            var res = sut.AddEvent(addEvent);

            //Assert
            res.Should().BeOfType <BadRequestErrorMessageResult>();
            res.As <BadRequestErrorMessageResult>().Message.Should().Be("Gender entered is not valid it must be either M, F, or Mix");
        }
コード例 #3
0
        public void AddEventInvalidEventCodeReturnsBadRequest()
        {
            //Setup
            var mockEventsRepo       = new Mock <IEventRepo>();
            var mockEventResultsRepo = new Mock <IEventResultsRepo>();
            var mockUserRepo         = new Mock <IUserRepo>();
            var addEvent             = new EventAddModel()
            {
                EventAge    = "21",
                EventCode   = "35",
                EventGender = "M",
                MeetId      = 1,
                Round       = "F"
            };

            var sut = new EventsController(mockEventsRepo.Object, mockEventResultsRepo.Object, mockUserRepo.Object);


            //Action
            var res = sut.AddEvent(addEvent);

            //Assert
            res.Should().BeOfType <BadRequestErrorMessageResult>();
            res.As <BadRequestErrorMessageResult>().Message.Should().Be("Event Code is not valid and must be match the neutral file format standard");
        }
コード例 #4
0
        public void AddEventValidModelAndFailedDatabaseReturnsBadRequest()
        {
            //Setup
            var mockEventsRepo       = new Mock <IEventRepo>();
            var mockEventResultsRepo = new Mock <IEventResultsRepo>();
            var mockUserRepo         = new Mock <IUserRepo>();
            var addEvent             = new EventAddModel()
            {
                EventAge    = "21",
                EventCode   = "01",
                EventGender = "M",
                MeetId      = 1,
                Round       = "F"
            };

            mockEventsRepo.Setup(MER => MER.AddEvent(addEvent)).Returns(false);

            var sut = new EventsController(mockEventsRepo.Object, mockEventResultsRepo.Object, mockUserRepo.Object);


            //Action
            var res = sut.AddEvent(addEvent);

            //Assert
            res.Should().BeOfType <BadRequestErrorMessageResult>();
            res.As <BadRequestErrorMessageResult>().Message.Should().Be("Failed to add to database");
        }
コード例 #5
0
        public void AddEventValidModelAndDatabaseReturnsOk()
        {
            //Setup
            var mockEventsRepo       = new Mock <IEventRepo>();
            var mockEventResultsRepo = new Mock <IEventResultsRepo>();
            var mockUserRepo         = new Mock <IUserRepo>();
            var addEvent             = new EventAddModel()
            {
                EventAge    = "21",
                EventCode   = "01",
                EventGender = "M",
                MeetId      = 1,
                Round       = "F"
            };

            mockEventsRepo.Setup(MER => MER.AddEvent(addEvent)).Returns(true);

            var sut = new EventsController(mockEventsRepo.Object, mockEventResultsRepo.Object, mockUserRepo.Object);


            //Action
            var res = sut.AddEvent(addEvent);

            //Assert
            res.Should().BeOfType <OkResult>();
        }
コード例 #6
0
        //POST api/Events/AddEvent
        public IHttpActionResult AddEvent(EventAddModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (!Gender.Contains(model.EventGender))
            {
                return(BadRequest("Gender entered is not valid it must be either M, F, or Mix"));
            }

            if (!EventCodes.Contains(model.EventCode))
            {
                return(BadRequest("Event Code is not valid and must be match the neutral file format standard"));
            }

            if (!Rounds.Contains(model.Round))
            {
                return(BadRequest("Round must be one of the following H, F, C, S, B according to the Neutral file format"));
            }

            return(_eventRepo.AddEvent(model)
                ?  (IHttpActionResult)Ok()
                :  BadRequest("Failed to add to database"));
        }
コード例 #7
0
ファイル: EventRepo.cs プロジェクト: charlieH1/SwimmerAPI
 public bool AddEvent(EventAddModel model)
 {
     var eventToAdd = _db.Events.Create();
     eventToAdd.MeetId = model.MeetId;
     eventToAdd.EventAge = model.EventAge;
     eventToAdd.EventCode = model.EventCode;
     eventToAdd.EventGender = model.EventGender;
     eventToAdd.EventCode = model.EventCode;
     eventToAdd.Round = model.Round;
     var res = _db.SaveChanges();
     return res > 0;
 }
コード例 #8
0
        public void AddEventBadModelReturnsModelErrorState()
        {
            //Setup
            var mockEventsRepo       = new Mock <IEventRepo>();
            var mockEventResultsRepo = new Mock <IEventResultsRepo>();
            var mockUserRepo         = new Mock <IUserRepo>();
            var addEvent             = new EventAddModel();

            var sut = new EventsController(mockEventsRepo.Object, mockEventResultsRepo.Object, mockUserRepo.Object);

            sut.ModelState.AddModelError("Round", "Round Is Required");


            //Action
            var res = sut.AddEvent(addEvent);

            //Assert
            res.Should().BeOfType <InvalidModelStateResult>();
            res.As <InvalidModelStateResult>().ModelState.IsValid.Should().BeFalse();
        }