예제 #1
0
        public async Task <IActionResult> GetSession([FromRoute] int id)
        {
            var session = await _sessionRepo.Find(x => x.Id == id);

            if (session == null)
            {
                return(NotFound());
            }
            var sessionUpdate = _mapper.Map <SessionInfoDTO>(session);

            return(Ok(sessionUpdate));
        }
예제 #2
0
        public async void UpdateSession_TeacherSession_SubmitWithNoClassesAndReasons_ShouldSaveSelectedIntoDatabase()
        {
            var person = new Person()
            {
                Email      = "*****@*****.**",
                FirstName  = "Teach",
                LastName   = "Pecan",
                Id         = 7981,
                PersonType = PersonType.Teacher
            };
            var semester = new Semester()
            {
                Code = 201903
            };

            var session = new Session()
            {
                InTime       = DateTime.Now,
                OutTime      = DateTime.Now.Add(new TimeSpan(5)),
                PersonId     = person.Id,
                SemesterCode = semester.Code
            };

            db.People.Add(person);
            db.Semesters.Add(semester);
            db.Sessions.Add(session);
            db.SaveChanges();

            var sessionUpdate = new SessionPostOrPutDTO()
            {
                InTime       = session.InTime,
                OutTime      = session.OutTime.Value.Add(new TimeSpan(5)),
                PersonId     = session.PersonId,
                Id           = session.Id,
                SemesterCode = session.SemesterCode,
                Tutoring     = session.Tutoring,
            };

            var result = await sessionController.UpdateSession(sessionUpdate.Id, sessionUpdate);

            var dbSession = await sessionRepo.Find(x => x.Id == sessionUpdate.Id);

            Assert.Equal(sessionUpdate.OutTime, dbSession.OutTime);
        }