use of org.mifos.platform.questionnaire.service.QuestionDetail in project head by mifos.
the class QuestionnaireServiceTest method shouldDefineQuestion.
@Test
public void shouldDefineQuestion() throws SystemException {
QuestionDetail questionDefinition = new QuestionDetail(QUESTION_TITLE, QuestionType.FREETEXT);
try {
QuestionDetail questionDetail = questionnaireService.defineQuestion(questionDefinition);
verify(questionDao, times(1)).saveOrUpdate(any(QuestionEntity.class));
Assert.assertNotNull(questionDetail);
Assert.assertEquals(QUESTION_TITLE, questionDetail.getText());
Assert.assertEquals(QuestionType.FREETEXT, questionDetail.getType());
} catch (SystemException e) {
Assert.fail("Should not have thrown the validation exception");
}
verify(questionnaireValidator).validateForDefineQuestion(questionDefinition);
verify(questionDao).saveOrUpdate(any(QuestionEntity.class));
}
use of org.mifos.platform.questionnaire.service.QuestionDetail in project head by mifos.
the class QuestionnaireServiceTest method testGetQuestionByIdSuccess.
@Test
public void testGetQuestionByIdSuccess() throws SystemException {
int questionId = 1;
String title = "Title";
when(questionDao.getDetails(questionId)).thenReturn(getQuestion(questionId, title, AnswerType.DATE));
QuestionDetail questionDetail = questionnaireService.getQuestion(questionId);
Assert.assertNotNull(questionDetail);
assertThat(questionDetail.getText(), is(title));
assertThat(questionDetail.getType(), is(QuestionType.DATE));
verify(questionDao, times(1)).getDetails(questionId);
}
use of org.mifos.platform.questionnaire.service.QuestionDetail in project head by mifos.
the class QuestionControllerTest method testCreateQuestionFailure.
@SuppressWarnings({ "ThrowableInstanceNeverThrown" })
@Test
public void testCreateQuestionFailure() throws Exception {
QuestionForm questionForm = getQuestionForm(TITLE, "numeric");
when(requestContext.getMessageContext()).thenReturn(messageContext);
Mockito.doThrow(new SystemException("db.write.failure")).when(questionnaireServiceFacade).createQuestions(Matchers.<List<QuestionDetail>>anyObject());
String result = questionController.createQuestions(questionForm, requestContext);
Assert.assertThat(result, is("failure"));
Mockito.verify(questionnaireServiceFacade).createQuestions(Matchers.<List<QuestionDetail>>anyObject());
Mockito.verify(requestContext).getMessageContext();
Mockito.verify(messageContext).addMessage(argThat(new MessageMatcher("db.write.failure")));
}
use of org.mifos.platform.questionnaire.service.QuestionDetail in project head by mifos.
the class QuestionControllerTest method getQuestion.
private Question getQuestion(String id, String title, String type) {
Question question = new Question(new QuestionDetail());
question.setText(title);
question.setId(id);
question.setType(type);
return question;
}
use of org.mifos.platform.questionnaire.service.QuestionDetail in project head by mifos.
the class QuestionnaireMapperTest method getSectionQuestionDetail.
private SectionQuestionDetail getSectionQuestionDetail(int secQuesId, int quesId, String quesText) {
SectionQuestionDetail sectionQuestionDetail1 = new SectionQuestionDetail();
sectionQuestionDetail1.setId(secQuesId);
QuestionDetail questionDetail = new QuestionDetail();
questionDetail.setId(quesId);
questionDetail.setText(quesText);
questionDetail.setType(QuestionType.FREETEXT);
sectionQuestionDetail1.setQuestionDetail(questionDetail);
return sectionQuestionDetail1;
}
Aggregations