public IActionResult CreateAnonymousHeadwordFeedback(long resourceVersionId, [FromBody] CreateAnonymousFeedbackContract data) { try { var resultId = m_feedbackManager.CreateAnonymousHeadwordFeedback(resourceVersionId, data); return(Ok(resultId)); } catch (HttpErrorCodeException exception) { return(StatusCode((int)exception.StatusCode, exception.Message)); } }
public long CreateAnonymousHeadwordFeedback(long resourceVersionId, CreateAnonymousFeedbackContract data) { try { var result = m_client.Post <long>($"feedback/headword/version/{resourceVersionId}/anonymous", data); return(result); } catch (HttpRequestException e) { if (m_logger.IsErrorEnabled()) { m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e); } throw; } }
public void TestCreateAnonymousFeedback() { const long resourceVersionId = 2149; var repository = new MockPortalRepository(); var data = new CreateAnonymousFeedbackContract { FeedbackCategory = FeedbackCategoryEnumContract.OldGrammar, Text = "Feedback text", AuthorEmail = "*****@*****.**", AuthorName = "Author Name" }; var work1 = new CreateFeedbackWork(m_mapper, repository, data, FeedbackType.Generic, null, resourceVersionId); work1.Execute(); Assert.AreEqual(1, repository.CreatedObjects.Count); Assert.AreEqual(0, repository.UpdatedObjects.Count); Assert.AreEqual(typeof(Feedback), repository.CreatedObjects.First().GetType()); repository = new MockPortalRepository(); var work2 = new CreateFeedbackWork(m_mapper, repository, new CreateFeedbackContract(), FeedbackType.Headword); Assert.ThrowsException <MainServiceException>(() => work2.Execute()); repository = new MockPortalRepository(); var work3 = new CreateFeedbackWork(m_mapper, repository, data, FeedbackType.Headword, null, resourceVersionId); work3.Execute(); Assert.AreEqual(1, repository.CreatedObjects.Count); Assert.AreEqual(0, repository.UpdatedObjects.Count); Assert.AreEqual(typeof(HeadwordFeedback), repository.CreatedObjects.First().GetType()); var feedbackEntity = (Feedback)repository.CreatedObjects.First(); Assert.IsNull(feedbackEntity.AuthorUser); Assert.AreEqual(data.AuthorEmail, feedbackEntity.AuthorEmail); Assert.AreEqual(data.AuthorName, feedbackEntity.AuthorName); Assert.AreEqual(data.Text, feedbackEntity.Text); }
public long CreateAnonymousHeadwordFeedback(long resourceVersionId, CreateAnonymousFeedbackContract data) { var resultId = new CreateFeedbackWork(m_mapper, m_portalRepository, data, FeedbackType.Headword, null, resourceVersionId).Execute(); return(resultId); }
public long CreateAnonymousFeedback(CreateAnonymousFeedbackContract data) { var resultId = new CreateFeedbackWork(m_mapper, m_portalRepository, data, FeedbackType.Generic).Execute(); return(resultId); }