Source:
private void testResponseRate() { feedbackEditPage.clickNewQuestionButton(); feedbackEditPage.selectNewQuestionType("TEXT"); feedbackEditPage.fillQuestionTextBoxForNewQuestion("new question"); feedbackEditPage.fillQuestionDescriptionForNewQuestion("more details"); feedbackEditPage.clickAddQuestionButton(); FeedbackResponseAttributes feedbackResponse = new FeedbackResponseAttributes( feedbackSessionName, courseId, "1", FeedbackQuestionType.TEXT, "tmms.test@gmail.tmt", Const.DEFAULT_SECTION, "alice.b.tmms@gmail.tmt", Const.DEFAULT_SECTION, new Text("Response from instructor to Alice")); BackDoor.createFeedbackResponse(feedbackResponse); ______TS("check response rate before editing question"); InstructorFeedbacksPage feedbacksPage = navigateToInstructorFeedbacksPage(); feedbacksPage.waitForAjaxLoaderGifToDisappear(); feedbacksPage.clickViewResponseLink(courseId, feedbackSessionName); feedbacksPage.verifyResponseValue("1 / 1", courseId, feedbackSessionName); feedbackEditPage = getFeedbackEditPage(); ______TS("check warning against changing visibility options for question with existing response"); assertTrue(feedbackEditPage.verifyAlertClassIsEnabledForVisibilityOptions(1)); feedbackEditPage.clickEditQuestionButton(1); feedbackEditPage.enableOtherFeedbackPathOptions(1); feedbackEditPage.selectRecipientToBe(FeedbackParticipantType.TEAMS, 1); feedbackEditPage.clickSaveExistingQuestionButton(1); feedbackEditPage.waitForConfirmationModalAndClickOk(); ______TS("check response rate after editing question"); feedbacksPage = navigateToInstructorFeedbacksPage(); feedbacksPage.waitForAjaxLoaderGifToDisappear(); feedbacksPage.clickViewResponseLink(courseId, feedbackSessionName); feedbacksPage.verifyResponseValue("0 / 1", courseId, feedbackSessionName); feedbackEditPage = getFeedbackEditPage(); feedbackEditPage.clickDeleteQuestionLink(1); feedbackEditPage.waitForConfirmationModalAndClickOk(); }

Target:
private void testResponseRate() { feedbackEditPage.clickNewQuestionButton(); feedbackEditPage.selectNewQuestionType("TEXT"); feedbackEditPage.fillQuestionTextBoxForNewQuestion("new question"); feedbackEditPage.fillQuestionDescriptionForNewQuestion("more details"); feedbackEditPage.clickAddQuestionButton(); FeedbackResponseAttributes feedbackResponse = new FeedbackResponseAttributes( feedbackSessionName, courseId, "1", FeedbackQuestionType.TEXT, "tmms.test@gmail.tmt", Const.DEFAULT_SECTION, "alice.b.tmms@gmail.tmt", Const.DEFAULT_SECTION, new Text("Response from instructor to Alice")); BackDoor.createFeedbackResponse(feedbackResponse); ______TS("check response rate before editing question"); InstructorFeedbacksPage feedbacksPage = navigateToInstructorFeedbacksPage(); feedbacksPage.waitForAjaxLoaderGifToDisappear(); feedbacksPage.clickViewResponseLink(courseId, feedbackSessionName); feedbacksPage.verifyResponseValue("1 / 1", courseId, feedbackSessionName); ______TS("check warning is displayed while editing visibility options of question with existing response"); feedbackEditPage = getFeedbackEditPage(); assertTrue(feedbackEditPage.isAlertClassEnabledForVisibilityOptions(1)); feedbackEditPage.clickEditQuestionButton(1); feedbackEditPage.enableOtherFeedbackPathOptions(1); feedbackEditPage.selectRecipientToBe(FeedbackParticipantType.TEAMS, 1); feedbackEditPage.clickSaveExistingQuestionButton(1); feedbackEditPage.waitForConfirmationModalAndClickOk(); ______TS("check no warning displayed while editing visibility options of question without responses"); assertFalse(feedbackEditPage.isAlertClassEnabledForVisibilityOptions(1)); ______TS("check response rate after editing question"); feedbacksPage = navigateToInstructorFeedbacksPage(); feedbacksPage.waitForAjaxLoaderGifToDisappear(); feedbacksPage.clickViewResponseLink(courseId, feedbackSessionName); feedbacksPage.verifyResponseValue("0 / 1", courseId, feedbackSessionName); feedbackEditPage = getFeedbackEditPage(); feedbackEditPage.clickDeleteQuestionLink(1); feedbackEditPage.waitForConfirmationModalAndClickOk(); }