Esempio n. 1
0
        public void NewSessionShouldReturnOk()
        {
            _sessionServiceMock.Setup(service => service.NewSession(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>()))
            .Returns(ResponseDTO <SessionDTO> .Ok(new SessionDTO()));

            var response = _operativeServices.NewSession(1, 1, 1, 1);

            Assert.IsTrue(response.Success);
            Assert.AreEqual(ResponseCode.Ok, response.Code);
            Assert.NotNull(response.Data);
        }
Esempio n. 2
0
        /// <summary>
        /// Starts new session.
        /// </summary>
        /// <returns>The first question of the created session.</returns>
        /// <param name="pCategory">Category.</param>
        /// <param name="pLevel">Level.</param>
        /// <param name="pQuestionsQuantity">Questions quantity.</param>
        public ResponseDTO <SessionDTO> StartNewSession(CategoryDTO pCategory, LevelDTO pLevel, int pQuestionsQuantity)
        {
            if (LoggedUser == null)
            {
                return(ResponseDTO <SessionDTO> .Unauthorized("You must log in before starting a new session."));
            }
            if (pCategory == null)
            {
                return(ResponseDTO <SessionDTO> .BadRequest("Select a category."));
            }
            if (pLevel == null)
            {
                return(ResponseDTO <SessionDTO> .BadRequest("Select a level."));
            }
            var response = _operativeService.NewSession(LoggedUser.Id, pCategory.Id, pLevel.Id, pQuestionsQuantity);

            if (response.Success)
            {
                CurrentSession = response.Data;
                CurrentSession.RemainingQuestions = CurrentSession.Questions.ToList();
            }
            return(response);
        }