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); }
/// <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); }