public void AddErrorTest() { BaseResultType baseResultType = new BaseResultType(); baseResultType.Status = ResultStatus.Fail; baseResultType.AddError("Error1"); Assert.AreEqual("Error1", baseResultType.Message); Assert.AreEqual(ResultStatus.Fail, baseResultType.Status, "При добавлении ошибки,IsSuccess должен меняться на false."); baseResultType.Status = ResultStatus.Success; baseResultType.AddError("Error2"); Assert.AreEqual("Error1" + Environment.NewLine + "Error2", baseResultType.Message); Assert.AreEqual(ResultStatus.Fail, baseResultType.Status, "При добавлении ошибки,IsSuccess должен меняться на false."); }
public BaseResultType Validate(DefaultParamOfCRUDOperation <Core.Data.Domain.House> item) { BaseResultType baseResultType = new BaseResultType() { Status = ResultStatus.Success }; if (item.Item.CountOfEntrance == null) { //WarningQuestion question = new WarningQuestion() //{ // Id = "1", // Message = "Отсутствует количество подъездов" //}; //baseResultType.AddWarring(question); if (!item.IsSendAndAnswerQuestion("Отсутствует количество подъездов.Продолжить?", ResultQuestionType.NO, baseResultType)) { baseResultType.AddError(" Отмена"); } } if (item.Item.CountOfFloor == null) { WarningQuestion question = new WarningQuestion() { Id = "1", Message = "Отсутствует количество этажей" }; baseResultType.AddWarring(question); } return(baseResultType); }
public bool IsSendAndAnswerQuestion(string query, string result, BaseResultType baseResultType) { Question question = Questions?.FirstOrDefault(x => x.Id == Item.CustomIdentity); if (question != null && question.Result == result) { //Ответ получили, но он не устраивает для проверки. return(false); } else { if (question == null) { //Если нет идентификатора, то добавляем ошибку, так как идентификатор нужен для сопоставления объекта с ответом. if (string.IsNullOrWhiteSpace(Item.CustomIdentity)) { baseResultType.AddError("Отсутствует идентификатор объекта для вопроса."); } else { //Добавляем воспрос question = new QuestionYesNo() { Id = Item.CustomIdentity, Message = query }; baseResultType.AddQuestion((QuestionYesNo)question); } } return(true); } }
public Task <BaseResultType <User> > LoginAllowCheckAsync(DefaultParamOfCRUDOperation <User> param) { return(Task.Run(() => { BaseResultType <User> resultType = new BaseResultType <User>(); if (param is null || param.Item is null) { resultType.AddError("Отсутствует параметр проверки пользователя."); }
public async Task <IActionResult> Logout() { BaseResultType result = new BaseResultType() { Status = ResultStatus.Success }; try { await HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme); } catch (Exception e) { result.AddError(e.Message); } return(Json(result)); }
public void MergeTest() { //TODO: дописать тесты для вопросов BaseResultType error = new BaseResultType(); error.Status = ResultStatus.Fail; error.AddError("Error"); BaseResultType message = new BaseResultType(); message.Status = ResultStatus.Success; message.AddMessage("Message"); //При merge, IsSuccess не должен изменяться из fail в success, но должен меняться из success в fail. Если была ошибка, то ошибка должна остаться error.Merge(message); Assert.AreEqual(ResultStatus.Fail, error.Status); Assert.AreEqual("Error" + Environment.NewLine + "Message", error.Message); error.Message = "Error";//Сьрасываем сообщение на исходное message.Merge(error); Assert.AreEqual(ResultStatus.Fail, error.Status); Assert.AreEqual("Message" + Environment.NewLine + "Error", message.Message); }
public BaseResultType Validate(DefaultParamOfCRUDOperation <ObjectMappingForTest> item) { BaseResultType baseResultType = new BaseResultType() { Status = ResultStatus.Success }; if (String.IsNullOrWhiteSpace(item.Item.StrValue)) { if (!item.IsSendAndAnswerQuestion("Продолжить?", ResultQuestionType.NO, baseResultType)) { baseResultType.AddError("Ошибка"); } } if (item.Item.IntValue2 == 22) { baseResultType.AddWarring(new WarningQuestion() { Message = "Уведомления" }); } return(baseResultType); }