public void AcceptTest(SyllabusManagerUser user, Syllabus input, Syllabus output, bool expectedResult) { // Arrange var dbSetMock = new Mock <DbSet <Syllabus> >(); dbSetMock .Setup(r => r.Find(input.Id)) .Returns(input); var syllabusService = new SyllabusService(SyllabusTestRepository.GetInMemorySyllabusContext(), null, dbSetMock.Object); // Act var result = syllabusService.Accept(input.Id, user); // Assert Assert.Equal(expectedResult, result); Assert.Equal(output.StudentGovernmentOpinion, input.StudentGovernmentOpinion); Assert.Equal(output.State, input.State); Assert.Equal(output.StudentRepresentativeName, input.StudentRepresentativeName); if (output.ApprovalDate is null) { Assert.Null(input.ApprovalDate); } else { Assert.NotNull(input.ApprovalDate); } if (output.ValidFrom is null) { Assert.Null(input.ValidFrom); } else { Assert.NotNull(input.ValidFrom); } }
public IHttpActionResult Delete(int id, string token) { var requestService = new Service.Utility.RequestDataHelper <SyllabusManagePostRequest>(); var result = new Infrastructure.ViewModel.Base.BaseResponse <string>(); if (id <= 0 || token == null || token == string.Empty) { result.State = Infrastructure.ViewModel.Base.LogState.RequestDataError; result.Success = false; result.Message = "確認是否遺漏資訊"; return(Content(HttpStatusCode.BadRequest, result)); } var syllabusService = new SyllabusService(); var data = syllabusService.DeleteSyllabusByToken(id, token); if (data == null) { result.State = Infrastructure.ViewModel.Base.LogState.Error; result.Success = false; result.Message = "刪除失敗"; return(Ok(result)); } result.Success = true; result.Message = "刪除成功"; return(Ok(result)); }
public IHttpActionResult Post(SyllabusManagePostRequest requestData) { var requestService = new Service.Utility.RequestDataHelper <SyllabusManagePostRequest>(); var checkColumnKeys = new string[3] { "token", "circleKey", "syllabuses" }; var checkEmpty = requestService.CheckColumnEmpty(requestData, checkColumnKeys); var result = new Infrastructure.ViewModel.Base.BaseResponse <List <Infrastructure.Entity.Syllabus> >(); //取得資料 if (checkEmpty == false) { result.State = Infrastructure.ViewModel.Base.LogState.RequestDataError; result.Success = false; result.Message = "確認是否遺漏資訊"; return(Content(HttpStatusCode.BadRequest, result)); } var syllabusService = new SyllabusService(); var data = syllabusService.SyllabusesDataProxy(requestData); if (data == null) { result.State = Infrastructure.ViewModel.Base.LogState.Error; result.Success = false; result.Message = "新增失敗"; return(Ok(result)); } result.Success = true; result.Message = "新增成功"; result.Data = data; return(Ok(result)); }
public void AreChangesTest(Syllabus previous, Syllabus current, bool expectedResult) { // Arrange // Act var result = SyllabusService.AreChanges(previous, current); // Assert Assert.Equal(expectedResult, result); }
public void SyllabusVerificationTest(Syllabus syllabus, List <string> exptectedOutput) { // Arrange var syllabusService = new SyllabusService(null, null, null, null); // Act var result = syllabusService.Verify(syllabus); // Assert Assert.True(exptectedOutput.All(o => result.Any(r => r == o)) && result.All(r => exptectedOutput.Any(o => r == o))); }
{ /// <summary> /// 取得課綱資訊 /// </summary> /// <param name="circleKey"></param> /// <param name="strAccess"></param> /// <returns></returns> public IHttpActionResult Get(string strAccess) { var requestService = new Service.Utility.RequestDataHelper <Infrastructure.ViewModel.Base.BackendBaseRequest>(); var requestData = JsonConvert.DeserializeObject <Infrastructure.ViewModel.Base.BackendBaseRequest>(strAccess); var checkColumnKey = new string[2] { "token", "circlekey" }; var checkEmpty = requestService.CheckColumnEmpty(requestData, checkColumnKey); var response = new Infrastructure.ViewModel.Base.BaseResponse <List <Infrastructure.ViewModel.CourseManage.GetCourseSyllabusResponse> >(); response.Success = false; response.Data = new List <GetCourseSyllabusResponse>(); if (checkEmpty == false) { response.Message = "遺漏參數"; response.State = Infrastructure.ViewModel.Base.LogState.RequestDataError; return(Content(HttpStatusCode.BadRequest, response)); } var tokenService = new TokenService(); var checkToken = tokenService.GetTokenInfo(requestData.Token).Result; if (checkToken == null) { response.Message = "已登出"; response.State = Infrastructure.ViewModel.Base.LogState.Logout; return(Ok(response)); } var syllabusService = new SyllabusService(); var data = syllabusService.APPGetCourSyllabus(requestData.Token, requestData.CircleKey.ToLower()); if (data == null && data.Count() < 0) { response.Success = false; response.Message = "查詢失敗"; response.State = Infrastructure.ViewModel.Base.LogState.Error; return(Ok(response)); } response.Success = true; response.Message = "查詢成功"; response.Data = data.ToList(); return(Ok(response)); }
public IHttpActionResult Get([FromUri] string strAccess) { var requestData = JsonConvert.DeserializeObject <Infrastructure.ViewModel.CourseManage.GetCourseSyllabusRequest>(strAccess); if (requestData.ClassID == null || requestData.Account == null || requestData.ICanToken == null) { return(Content(HttpStatusCode.BadRequest, "遺漏參數")); } var service = new SyllabusService(); var result = new Infrastructure.ViewModel.Base.ResultBaseModel <Infrastructure.ViewModel.CourseManage.GetCourseSyllabusResponse>(); var tokenService = new TokenService(); var checkToken = tokenService.GetTokenInfo(requestData.ICanToken).Result; if (checkToken == null) { result.Success = false; result.Message = "已登出"; result.State = Infrastructure.ViewModel.Base.LogState.Logout; return(Content(HttpStatusCode.BadRequest, result)); } var data = service.APPGetCourSyllabus(requestData.ICanToken, requestData.ClassID); if (data == null) { result.Success = false; result.Message = "查詢錯誤"; result.State = Infrastructure.ViewModel.Base.LogState.Error; return(Ok(result)); } result.Success = true; result.Data = data.ToArray(); result.Message = "查詢成功"; return(Ok(result)); }
public IHttpActionResult Put(SyllabusManagePostRequest requestData) { var requestService = new Service.Utility.RequestDataHelper <SyllabusManagePostRequest>(); var checkColumnKeys = new string[5] { "id", "name", "note", "date", "token" }; var checkEmpty = requestService.CheckColumnEmpty(requestData, checkColumnKeys); var result = new Infrastructure.ViewModel.Base.BaseResponse <Infrastructure.Entity.Syllabus>(); if (checkEmpty == false) { result.State = Infrastructure.ViewModel.Base.LogState.RequestDataError; result.Success = false; result.Message = "確認是否遺漏資訊"; return(Content(HttpStatusCode.BadRequest, result)); } var syllabusService = new SyllabusService(); var data = syllabusService.UpdateSyllabusByToken(requestData.Id.Value, requestData.Name, requestData.Note, requestData.Date, requestData.Token); if (data == null) { result.State = Infrastructure.ViewModel.Base.LogState.Error; result.Success = false; result.Message = "編輯失敗"; return(Ok(result)); } result.Success = true; result.Message = "編輯成功"; result.Data = data; return(Ok(result)); }
public IHttpActionResult Post([FromBody] Infrastructure.ViewModel.CourseManage.GetCourseSyllabusRequest value) { if (value.ClassID == null || value.Account == null || value.ICanToken == null) { return(Content(HttpStatusCode.BadRequest, "遺漏參數")); } var service = new SyllabusService(); var data = service.APPGetCourSyllabus(value.ICanToken, value.ClassID); var result = new Infrastructure.ViewModel.Base.ResultBaseModel <Infrastructure.ViewModel.CourseManage.GetCourseSyllabusResponse>(); if (data == null) { result.Success = false; result.Message = "查無資料"; return(Ok(result)); } result.Success = true; result.Data = data.ToArray(); result.Message = "查詢成功"; return(Ok(result)); }
public HttpResponseMessage Get(string securityToken, int schoolId, int classId) { SyllabusResponse response = null; if (IsValid(securityToken)) { ISyllabusService syllabusService = new SyllabusService(this._dbContext); response = new SyllabusResponse { Status = "OK" }; response.Syllabus = syllabusService.Get(schoolId, classId); CurrentLoggerProvider.Info(string.Format("Retrieved Syllabus. Count = {0}", response.Syllabus.Count())); } else { response = new SyllabusResponse { Status = "Error", ErrorCode = "ERR1001", ErrorMessage = "Invalid or expired token" }; CurrentLoggerProvider.Info("Invalid Request"); } return(Request.CreateResponse(HttpStatusCode.OK, response)); }