public void ContinuingReviewThroughCommitteeReviewToApprovedAndStudyClosed() { string targetStudy = "AutoTest-" + DataGen.String(5); EntityClonerUtil.CloneEntity("STUDY00000024", targetStudy, true); var CRSmartForm = new InitialModCrSmartForm(); var workspace = new IRBWorkspace(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); //Log in as the PI to an Approved study and select Create Modification/CR. Select “Continuing Review” and on the Continuing Review/Study Closure Information select the top 4 Research milestones. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); actionsNav.ImgCreateModCr.Click(); // Fill in just required info CRSmartForm.ChooseModCRPurpose(SubmissionPurpose.ContinuingReview); CRSmartForm.BtnContinue.Click(); CRSmartForm.SpecifyEnrollmentTotals("2","2","1"); CRSmartForm.ChooseResearchMilestone(InitialModCrSmartForm.MileStones.StudyPermanentlyClosedToEnrollment, InitialModCrSmartForm.MileStones.AllSubjectCompletedStudyRelatedInterventions, InitialModCrSmartForm.MileStones.CollectionOfPrivateInfoComplete,InitialModCrSmartForm.MileStones.AnalysisOfPrivateInfoComplete); CRSmartForm.RdoFinancialInterestNo.Click(); CRSmartForm.BtnContinue.Click(); CRSmartForm.BtnFinish.Click(); //As the PI, Submit the Continuing Review. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(new Link(By.LinkText("Submitted")).Exists, "'Submitted' activity not found for: " + targetStudy); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); var CRName = Web.PortalDriver.Title; // Log in as an IRB coordinator and Assign Coordinator Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.AssignCoordinator("Orlando Max (irbc)"); //Log in as the assigned coordinator and Submit Pre-Review Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.SubmitPreReviewForCR(); //As the assigned coordinator, Assign Meeting. workspace.AssignMeetingByFirstMeeting(); Assert.IsTrue(workspace.GetStudyState() == "Committee Review"); //As the assigned coordinator, Submit Committee Review (approved determination). // need determination, risk level workspace.SubmitCommitteeReview(SubmitCommitteeReviewPopup.Determinations.Approved,"2", "0", "0", "0", "0", "", true); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter (Study Closure). //TODO -- change the letter workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Prepare Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Approved", "State expected not in 'Approved'. State currently: " + workspace.GetStudyState()); }
public void MODCRStudyTeamOnlyCreationThroughNonCommitteeReviewWithModificationsRequiredToApproved() { string targetStudy = "AutoTest-" + DataGen.String(5); EntityClonerUtil.CloneEntity("STUDY00000024", targetStudy, true); var CRSmartForm = new InitialModCrSmartForm(); var StudySF = new InitialStudySmartForm(); var workspace = new IRBWorkspace(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); // Log in as the PI and go to the IRB/Active tab and select an Approved study, Create Modification/CR , // select “Modification and Continuing” and “Other parts of the study”. Make changes to one or more views of the study. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); actionsNav.ImgCreateModCr.Click(); // Fill in just required info CRSmartForm.ChooseModCRPurpose(SubmissionPurpose.ModAndCR); CRSmartForm.ChooseModificationScope(Scope.StudyTeamMemberInformation); CRSmartForm.BtnContinue.Click(); CRSmartForm.SpecifyEnrollmentTotals("2", "2", "1"); CRSmartForm.ChooseResearchMilestone(InitialModCrSmartForm.MileStones.StudyPermanentlyClosedToEnrollment, InitialModCrSmartForm.MileStones.AllSubjectCompletedStudyRelatedInterventions, InitialModCrSmartForm.MileStones.CollectionOfPrivateInfoComplete, InitialModCrSmartForm.MileStones.AnalysisOfPrivateInfoComplete); CRSmartForm.RdoFinancialInterestNo.Click(); CRSmartForm.BtnContinue.Click(); // Modification Page CRSmartForm.TxtSummarizeModifications.Value = "These are the new modifications! :/ :) :P"; CRSmartForm.BtnContinue.Click(); // Add a study team member, save, exit StudySF.StudyTeamMembersPage.AddStudyTeamMember(false, false, "", AddStudyTeamMemberPopup.Roles.CoInvestigator); StudySF.LnkSave.Click(); StudySF.LnkExit.Click(); //As the PI, Submit the Mod. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(new Link(By.LinkText("Submitted")).Exists, "'Submitted' activity not found for: " + targetStudy); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); var CRName = Web.PortalDriver.Title; //Log in as the assigned coordinator and Submit Pre-Review Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.SubmitPreReviewForCR(); // As the assigned IRBC, Assign Designated Reviewer. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.AssignDesignatedReviewer("Harry Smith (comm4)"); Assert.IsTrue(workspace.GetStudyState() == "Non-Committee Review", "State expected not in 'Non-Committee Review'. State currently: " + workspace.GetStudyState()); // Log in as the Designated Reviewer and Submit Designated Review approved. Store.LoginAsUser(Users.Comm4); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.SubmitDesignatedReviewForStudy(SubmitDesignatedReview.StudyDeterminations.ModificationsRequiredToSecureApproved, "These are modifications required: :/", true); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned IRB Coordinator, Finalize Documents. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.FinalizeDocuments(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Modifications Required", "State expected not in 'Modifications Required'. State currently: " + workspace.GetStudyState()); // Log in as the PI and Submit Response. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.SubmitResponse(Users.Pi.UserName, Users.Pi.Password, "This is my response! :P"); Assert.IsTrue(workspace.GetStudyState() == "Modifications Submitted", "State expected not in 'Modifications Submitted'. State currently: " + workspace.GetStudyState()); // Log in as the assigned IRB Coordinator, Review Required Modifications (Yes to the question “Were the modifications completed as required?” “yes” response) Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.ReviewRequiredModifications(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Approved", "State expected not in 'Approved'. State currently: " + workspace.GetStudyState()); }
public void MODCRStudyTeamOnlyCreationThroughCommitteeReviewToDeferred() { string targetStudy = "AutoTest-" + DataGen.String(5); EntityClonerUtil.CloneEntity("STUDY00000024", targetStudy, true); var CRSmartForm = new InitialModCrSmartForm(); var StudySF = new InitialStudySmartForm(); var workspace = new IRBWorkspace(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); // Log in as the PI and go to the IRB/Active tab and select an Approved study, Create Modification/CR , // select “Modification and Continuing” and “Other parts of the study”. Make changes to one or more views of the study. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); actionsNav.ImgCreateModCr.Click(); // Fill in just required info CRSmartForm.ChooseModCRPurpose(SubmissionPurpose.ModAndCR); CRSmartForm.ChooseModificationScope(Scope.StudyTeamMemberInformation); CRSmartForm.BtnContinue.Click(); CRSmartForm.SpecifyEnrollmentTotals("2", "2", "1"); CRSmartForm.ChooseResearchMilestone(InitialModCrSmartForm.MileStones.StudyPermanentlyClosedToEnrollment, InitialModCrSmartForm.MileStones.AllSubjectCompletedStudyRelatedInterventions, InitialModCrSmartForm.MileStones.CollectionOfPrivateInfoComplete, InitialModCrSmartForm.MileStones.AnalysisOfPrivateInfoComplete); CRSmartForm.RdoFinancialInterestNo.Click(); CRSmartForm.BtnContinue.Click(); // Modification Page CRSmartForm.TxtSummarizeModifications.Value = "These are the new modifications! :/ :) :P"; CRSmartForm.BtnContinue.Click(); // Add a study team member, save, exit //StudySF.StudyTeamMembersPage.AddStudyTeamMember("Czerch (comm2)", false, false, AddStudyTeamMemberPopup.Roles.CoInvestigator); // test to see if "" selects first value... StudySF.StudyTeamMembersPage.AddStudyTeamMember(false, false, "", AddStudyTeamMemberPopup.Roles.CoInvestigator); StudySF.LnkSave.Click(); StudySF.LnkExit.Click(); //As the PI, Submit. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(new Link(By.LinkText("Submitted")).Exists, "'Submitted' activity not found for: " + targetStudy); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); var CRName = Web.PortalDriver.Title; //Log in as the assigned coordinator and Submit Pre-Review Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.SubmitPreReviewForCR(); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review Completed", "State expected not in 'Pre-Review Completed'. State currently: " + workspace.GetStudyState()); // Log in as an IRB coordinator and Assign Coordinator Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.AssignCoordinator("Orlando Max (irbc)"); //As the assigned coordinator, Assign Meeting. workspace.AssignMeetingByFirstMeeting(); Assert.IsTrue(workspace.GetStudyState() == "Committee Review"); //As the assigned coordinator, Submit Committee Review (approved determination). // need determination, risk level workspace.SubmitCommitteeReview(SubmitCommitteeReviewPopup.Determinations.Deferred, "2", "0", "0", "0", "0", "", true); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned IRB Coordinator, Finalize Documents. workspace.FinalizeDocuments(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Deferred", "State expected not in 'Deferred'. State currently: " + workspace.GetStudyState()); }
public void ModificationOtherPartsOfStudyCreationThroughCommitteeReviewDeferred() { string targetStudy = "AutoTest-" + DataGen.String(5); EntityClonerUtil.CloneEntity("STUDY00000024", targetStudy, true); var CRSmartForm = new InitialModCrSmartForm(); var StudySF = new InitialStudySmartForm(); var workspace = new IRBWorkspace(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); // Log in as the PI and go to the IRB/Active tab and select an Approved study, Create Modification/CR , // select “Modification and Continuing” and “Other parts of the study”. Make changes to one or more views of the study. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); actionsNav.ImgCreateModCr.Click(); // Fill in just required info CRSmartForm.ChooseModCRPurpose(SubmissionPurpose.Modification); CRSmartForm.ChooseModificationScope(Scope.OtherPartsOfTheStudy); CRSmartForm.BtnContinue.Click(); // Modification Page CRSmartForm.TxtSummarizeModifications.Value = "These are the new modifications! :/ :) :P"; CRSmartForm.BtnContinue.Click(); StudySF.NewSubmissionSmartformPage.TxtDescription.Value = "This is a modified description for this test."; StudySF.LnkSave.Click(); StudySF.LnkExit.Click(); //As the PI, Submit. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(new Link(By.LinkText("Submitted")).Exists, "'Submitted' activity not found for: " + targetStudy); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); var CRName = Web.PortalDriver.Title; //Log in as the assigned coordinator and Submit Pre-Review Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.SubmitPreReviewForCR(); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review Completed", "State expected not in 'Pre-Review Completed'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Assign Meeting. workspace.AssignMeetingByFirstMeeting(); Assert.IsTrue(workspace.GetStudyState() == "Committee Review", "State expected not in 'Committee Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Submit Committee Review (approved determination). // need determination, risk level workspace.SubmitCommitteeReview(SubmitCommitteeReviewPopup.Determinations.Deferred, "modification comments", "2", "0", "0", "0", "0", "", true); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned IRB Coordinator, Finalize Documents. workspace.FinalizeDocuments(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Deferred", "State expected not in 'Deferred'. State currently: " + workspace.GetStudyState()); }
public void ModificationStudyTeamOnlyCreation_NCR_ModsRequired_Approved() { string targetStudy = "AutoTest-" + DataGen.String(5); EntityClonerUtil.CloneEntity("STUDY00000024", targetStudy, true); var CRSmartForm = new InitialModCrSmartForm(); var StudySF = new InitialStudySmartForm(); var workspace = new IRBWorkspace(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); // Log in as the PI and go to the IRB/Active tab and select an Approved study, Create Modification/CR , select “Modification” and “Study team member information”. // Change some aspect of the Study Team member form. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); actionsNav.ImgCreateModCr.Click(); // Fill in just required info CRSmartForm.ChooseModCRPurpose(SubmissionPurpose.Modification); CRSmartForm.ChooseModificationScope(Scope.StudyTeamMemberInformation); CRSmartForm.BtnContinue.Click(); // Modification Page CRSmartForm.TxtSummarizeModifications.Value = "These are the new modifications! :/ :) :P"; CRSmartForm.BtnContinue.Click(); // Add a study team member, save, exit StudySF.StudyTeamMembersPage.AddStudyTeamMember(false, false, "", AddStudyTeamMemberPopup.Roles.CoInvestigator); StudySF.LnkSave.Click(); StudySF.LnkExit.Click(); //As the PI, Submit. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); var ModName = Web.PortalDriver.Title; // Log in as IRBD and assign Coordinator (skip this this step if the copy option is enabled). Store.LoginAsUser(Users.Irbd); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.AssignCoordinator("Orlando Max (irbc)"); //Log in as the assigned coordinator and Submit Pre-Review Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.SubmitPreReviewForCR(); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review Completed", "State expected not in 'Pre-Review Completed'. State currently: " + workspace.GetStudyState()); // As the assigned IRBC, Assign Designated Reviewer. workspace.AssignDesignatedReviewer("Harry Smith (comm4)"); Assert.IsTrue(workspace.GetStudyState() == "Non-Committee Review", "State expected not in 'Non-Committee Review'. State currently: " + workspace.GetStudyState()); // Log in as the Designated Reviewer and Submit Designated Review (modifications required to secure “approved” determination). Store.LoginAsUser(Users.Comm4); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.SubmitDesignatedReviewForStudy(SubmitDesignatedReview.StudyDeterminations.ModificationsRequiredToSecureApproved, "These are modification notes: ", true); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned IRB Coordinator, Finalize Documents. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.FinalizeDocuments(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Modifications Required", "State expected not in 'Modifications Required'. State currently: " + workspace.GetStudyState()); // Log in as the PI and Submit Response. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.SubmitResponse(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(workspace.GetStudyState() == "Modifications Submitted", "State expected not in 'Modifications Submitted'. State currently: " + workspace.GetStudyState()); // Log in as IRBC, Review Required Modifications. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.ReviewRequiredModifications(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Approved", "State expected not in 'Approved'. State currently: " + workspace.GetStudyState()); }
public void ModificationStudyTeamOnlyCreationThroughCR_Disapproved() { string targetStudy = "AutoTest-" + DataGen.String(5); EntityClonerUtil.CloneEntity("STUDY00000024", targetStudy, true); var CRSmartForm = new InitialModCrSmartForm(); var StudySF = new InitialStudySmartForm(); var workspace = new IRBWorkspace(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); // Log in as the PI and go to the IRB/Active tab and select an Approved study, Create Modification/CR , select “Modification” and “Study team member information”. // Change some aspect of the Study Team member form. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); actionsNav.ImgCreateModCr.Click(); // Fill in just required info CRSmartForm.ChooseModCRPurpose(SubmissionPurpose.Modification); CRSmartForm.ChooseModificationScope(Scope.StudyTeamMemberInformation); CRSmartForm.BtnContinue.Click(); // Modification Page CRSmartForm.TxtSummarizeModifications.Value = "These are the new modifications! :/ :) :P"; CRSmartForm.BtnContinue.Click(); // Add a study team member, save, exit StudySF.StudyTeamMembersPage.AddStudyTeamMember(false, false, "", AddStudyTeamMemberPopup.Roles.CoInvestigator); StudySF.LnkSave.Click(); StudySF.LnkExit.Click(); //As the PI, Submit. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(new Link(By.LinkText("Submitted")).Exists, "'Submitted' activity not found for: " + targetStudy); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); var modName = Web.PortalDriver.Title; // Log in as IRBD and assign Coordinator (skip this this step if the copy option is enabled). Store.LoginAsUser(Users.Irbd); irbSubmissionsPage.OpenSubmissionByAllSubmissions(modName); workspace.AssignCoordinator("Orlando Max (irbc)"); //Log in as the assigned coordinator and Submit Pre-Review Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(modName); workspace.SubmitPreReviewForCR(); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review Completed", "State expected not in 'Pre-Review Completed'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Assign Meeting. workspace.AssignMeetingByFirstMeeting(); Assert.IsTrue(workspace.GetStudyState() == "Committee Review", "State expected not in 'Committee Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Submit Committee Review (approved determination). workspace.SubmitCommitteeReview(SubmitCommitteeReviewPopup.Determinations.Disapproved, "modification comments", "2", "0", "0", "0", "0", "", true); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned IRB Coordinator, Finalize Documents. workspace.FinalizeDocuments(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Disapproved", "State expected not in 'Disapproved'. State currently: " + workspace.GetStudyState()); }
public void ModificationOtherPartsOfStudyCreationThroughNCRApproved() { string targetStudy = "AutoTest-" + DataGen.String(5); EntityClonerUtil.CloneEntity("STUDY00000024", targetStudy, true); var CRSmartForm = new InitialModCrSmartForm(); var StudySF = new InitialStudySmartForm(); var workspace = new IRBWorkspace(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); // Log in as the PI and go to the IRB/Active tab and select an Approved study, Create Modification/CR , // select “Modification and Continuing” and “Other parts of the study”. Make changes to one or more views of the study. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); actionsNav.ImgCreateModCr.Click(); // Fill in just required info CRSmartForm.ChooseModCRPurpose(SubmissionPurpose.Modification); CRSmartForm.ChooseModificationScope(Scope.OtherPartsOfTheStudy); CRSmartForm.BtnContinue.Click(); // Modification Page CRSmartForm.TxtSummarizeModifications.Value = "These are the new modifications! :/ :) :P"; CRSmartForm.BtnContinue.Click(); StudySF.NewSubmissionSmartformPage.TxtDescription.Value = "This is a modified description for this test."; StudySF.LnkSave.Click(); StudySF.LnkExit.Click(); //As the PI, Submit. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); var ModName = Web.PortalDriver.Title; // Log in as IRBD and assign Coordinator (skip this this step if the copy option is enabled). Store.LoginAsUser(Users.Irbd); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.AssignCoordinator("Orlando Max (irbc)"); // Log in as IRBC, Request Pre-Review Clarification Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.RequestPreReviewClarification(); Assert.IsTrue(workspace.GetStudyState() == "Clarification Requested (Pre-Review)", "State expected not in 'Clarification Requested (Pre-Review)'. State currently: " + workspace.GetStudyState()); // Log in as PI, Submit Response. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.SubmitResponse(Users.Pi.UserName, Users.Pi.Password, "This is my response!"); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); // Log in as IRBC and Assign Coordinator who is different than the IRBC in the initial study. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.AssignCoordinator("Ira Stein (irbd)"); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); //Log in as the assigned coordinator and Submit Pre-Review Store.LoginAsUser(Users.Irbd); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.SubmitPreReviewForCR(); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review Completed", "State expected not in 'Pre-Review Completed'. State currently: " + workspace.GetStudyState()); // As the assigned IRBC, Assign Designated Reviewer. workspace.AssignDesignatedReviewer("Harry Smith (comm4)"); Assert.IsTrue(workspace.GetStudyState() == "Non-Committee Review", "State expected not in 'Non-Committee Review'. State currently: " + workspace.GetStudyState()); // Log in as the assigned coordinator, Submit Committee Review (approved determination). Store.LoginAsUser(Users.Irbd); irbSubmissionsPage.OpenSubmissionByAllSubmissions(ModName); workspace.SubmitDesignatedReviewForStudy(SubmitDesignatedReview.StudyDeterminations.Approved); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Approved", "State expected not in 'Approved'. State currently: " + workspace.GetStudyState()); }
public void InitialStudyCreationWithNonCommitteeReview_HumanResearchNotEngaged() { string targetStudy = "AutoTestStudy-" + DataGen.String(5); var InitialStudySF = new InitialStudySmartForm(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); var workspace = new IRBWorkspace(); //Log in as PI and Create New Study. Store.LoginAsUser(Users.Pi); actionsNav.ImgCreateNewStudyLink.Click(); InitialStudySF.NewSubmissionSmartformPage.TxtDescription.Value = "Random Automated test for IRB submission"; InitialStudySF.NewSubmissionSmartformPage.TxtTitleStudy.Value = targetStudy; InitialStudySF.NewSubmissionSmartformPage.TxtShortTitle.Value = targetStudy; InitialStudySF.NewSubmissionSmartformPage.RdoExternalIrbNo.Selected = true; InitialStudySF.NewSubmissionSmartformPage.RdoFinancialInterestNo.Selected = true; InitialStudySF.NewSubmissionSmartformPage.AttachProtocol(@"\\pdxstor\public\Aaron.Bentley\automation\testDoc.docx"); InitialStudySF.NewSubmissionSmartformPage.BtnContinue.Click(); // Funding Sources InitialStudySF.FundingSourcesPage.BtnContinue.Click(); // Study Team Members InitialStudySF.StudyTeamMembersPage.AddStudyTeamMember(false, false, "Bivens (pi2)", AddStudyTeamMemberPopup.Roles.CoInvestigator, AddStudyTeamMemberPopup.Roles.ResearchAssistant); InitialStudySF.StudyTeamMembersPage.BtnContinue.Click(); // Study Scope InitialStudySF.StudyScopePage.SpecifyExternalSite(false); InitialStudySF.StudyScopePage.SpecifyDrugsInvolved(false); InitialStudySF.StudyScopePage.SpecifyDevicesInvolved(false); InitialStudySF.StudyScopePage.BtnContinue.Click(); // Consent Forms and Recuitment Materials -- skip InitialStudySF.ConsentFormsRecruitmentPage.BtnContinue.Click(); // title / description -- skip InitialStudySF.StudyModCustomPage.BtnContinue.Click(); // Add supporting documents -- skip InitialStudySF.SupportingDocumentsPage.BtnContinue.Click(); // Final Page InitialStudySF.FinalPage.BtnFinish.Click(); // Assert the study appears in window title Wait.Until(h => Web.PortalDriver.Title == targetStudy); //As the PI, Submit the study. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); //Log in as an IRB coordinator and Assign Coordinator. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); workspace.AssignCoordinator("Orlando Max (irbc)"); //As the IRBC, Submit Pre-Review (yes to “Are you ready to Submit this pre-review?) workspace.SubmitPreReviewForStudy(SubmitPreReviewPopup.TypeOfResearch.BiomedicalClinical); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review Completed", "State expected not in 'Pre-Review Completed'. State currently: " + workspace.GetStudyState()); //As the IRBC, Assign Designated Reviewer. workspace.AssignDesignatedReviewer("Harry Smith (comm4)"); //Log in as Designated Reviewer, Submit Designated Review (approved determination and “yes” to submit the review). Store.LoginAsUser(Users.Comm4); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); workspace.SubmitDesignatedReviewForStudy(SubmitDesignatedReview.StudyDeterminations.HumanResearchNotEngaged); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyID()); //Log in as assigned coordinator, Finalize Documents. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); workspace.FinalizeDocuments(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyID()); //As the assigned coordinator, Prepare Letter (Approved should be the only choice). workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyID()); //As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Human Research, Not Engaged", "State expected not in 'Human Research, Not Engaged'. State currently: " + workspace.GetStudyID()); }
public void InitialStudyCreationWithExternalIRB() { string targetStudy = "AutoTestStudy-" + DataGen.String(5); var InitialStudySF = new InitialStudySmartForm(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); var workspace = new IRBWorkspace(); //Log in as PI and Create New Study. Store.LoginAsUser(Users.Pi); actionsNav.ImgCreateNewStudyLink.Click(); InitialStudySF.NewSubmissionSmartformPage.TxtDescription.Value = "Random Automated test for IRB submission"; InitialStudySF.NewSubmissionSmartformPage.TxtTitleStudy.Value = targetStudy; InitialStudySF.NewSubmissionSmartformPage.TxtShortTitle.Value = targetStudy; InitialStudySF.NewSubmissionSmartformPage.RdoFinancialInterestNo.Selected = true; InitialStudySF.NewSubmissionSmartformPage.RdoExternalIrbYes.Selected = true; //InitialStudySF.NewSubmissionSmartformPage.AttachProtocol(@"\\pdxstor\public\Aaron.Bentley\automation\testDoc.docx"); InitialStudySF.NewSubmissionSmartformPage.BtnContinue.Click(); // External IRB Page InitialStudySF.ExternalIrbPage.BtnSelectExternalIRB.Click(); InitialStudySF.ExternalIrbPage.SelectOrgPopup.SwitchTo(); InitialStudySF.ExternalIrbPage.SelectOrgPopup.SelectValue("Dummy External Institute"); InitialStudySF.ExternalIrbPage.SelectOrgPopup.BtnOk.Click(); InitialStudySF.ExternalIrbPage.SelectOrgPopup.SwitchBackToParent(); InitialStudySF.ExternalIrbPage.BtnFinish.Click(); Wait.Until(h => new Link(By.LinkText("Study Created")).Exists); //As the PI, Submit the study. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); //Log in as an IRB coordinator and Confirm External IRB. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); workspace.ConfirmExternalIRB(); Assert.IsTrue(workspace.GetStudyState() == "External IRB", "State expected not in 'External IRB'. State currently: " + workspace.GetStudyState()); //Log in as the PI and Update External IRB Status (yes to close study). Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); workspace.UpdateExternalIRBStatus(); Assert.IsTrue(workspace.GetStudyState() == "Closed", "State expected not in 'Closed'. State currently: " + workspace.GetStudyState()); }
public void InitialStudyCreationThroughCommitteeReview_ModsRequired_Approved() { string targetStudy = "AutoTestStudy-" + DataGen.String(5); var InitialStudySF = new InitialStudySmartForm(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); var workspace = new IRBWorkspace(); //Log in as PI and Create New Study. Store.LoginAsUser(Users.Pi); actionsNav.ImgCreateNewStudyLink.Click(); InitialStudySF.NewSubmissionSmartformPage.TxtDescription.Value = "Random Automated test for IRB submission"; InitialStudySF.NewSubmissionSmartformPage.TxtTitleStudy.Value = targetStudy; InitialStudySF.NewSubmissionSmartformPage.TxtShortTitle.Value = targetStudy; InitialStudySF.NewSubmissionSmartformPage.RdoExternalIrbNo.Selected = true; InitialStudySF.NewSubmissionSmartformPage.RdoFinancialInterestNo.Selected = true; InitialStudySF.NewSubmissionSmartformPage.AttachProtocol(@"\\pdxstor\public\Aaron.Bentley\automation\testDoc.docx"); InitialStudySF.NewSubmissionSmartformPage.BtnContinue.Click(); // Funding Sources InitialStudySF.FundingSourcesPage.BtnContinue.Click(); // Study Team Members InitialStudySF.StudyTeamMembersPage.AddStudyTeamMember(false, false, "Bivens (pi2)", AddStudyTeamMemberPopup.Roles.CoInvestigator, AddStudyTeamMemberPopup.Roles.ResearchAssistant); InitialStudySF.StudyTeamMembersPage.BtnContinue.Click(); // Study Scope InitialStudySF.StudyScopePage.SpecifyExternalSite(false); InitialStudySF.StudyScopePage.SpecifyDrugsInvolved(false); InitialStudySF.StudyScopePage.SpecifyDevicesInvolved(false); InitialStudySF.StudyScopePage.BtnContinue.Click(); // Consent Forms and Recuitment Materials -- skip InitialStudySF.ConsentFormsRecruitmentPage.BtnContinue.Click(); // title / description -- skip InitialStudySF.StudyModCustomPage.BtnContinue.Click(); // Add supporting documents -- skip InitialStudySF.SupportingDocumentsPage.BtnContinue.Click(); // Final Page InitialStudySF.FinalPage.BtnFinish.Click(); // Assert the study appears in window title Wait.Until(h => Web.PortalDriver.Title == targetStudy); // As the PI, Submit the study. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); // Log in as an IRB coordinator and Assign Coordinator. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); workspace.AssignCoordinator("Orlando Max (irbc)"); // Log in as the assigned IRBC, Submit Pre-Review (yes to submit pre-review). workspace.SubmitPreReviewForStudy(SubmitPreReviewPopup.TypeOfResearch.BiomedicalClinical); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review Completed", "State expected not in 'Pre-Review Completed'. State currently: " + workspace.GetStudyState()); // Log in as the assigned IRB Coordinator, Assign to Meeting. workspace.AssignMeetingByFirstMeeting(); Assert.IsTrue(workspace.GetStudyState() == "Committee Review", "State expected not in 'Committee Review'. State currently: " + workspace.GetStudyState()); //As the assigned IRB Coordinator, Submit Committee Review (Modifications Required Secure to Approved) workspace.SubmitCommitteeReview(SubmitCommitteeReviewPopup.Determinations.ModificationsRequiredToSecureApproved, "Reason #1","2", "1", "0", "0", "0", "", true); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyID()); //Log in as assigned coordinator, Finalize Documents. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); workspace.FinalizeDocuments(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyID()); //As the assigned coordinator, Prepare Letter (Approved should be the only choice). workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyID()); //As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Modifications Required", "State expected not in 'Modifications Required'. State currently: " + workspace.GetStudyID()); // Log in as the PI and Submit Response. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); workspace.SubmitResponse(Users.Pi.UserName,Users.Pi.Password,"This is my respone! :/ "); // Log in as the assigned IRB Coordinator and Assign to Committee Review. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); workspace.AssignToCommitteeReview(); Assert.IsTrue(workspace.GetStudyState() == "Committee Review", "State expected not in 'Committee Review'. State currently: " + workspace.GetStudyID()); // As the assigned IRB Coordinator, Add Review Comments. workspace.AddReviewComments("Reviewed!"); // TODO VERIFY THE REVIEW COMMENTS //Assert.IsTrue(workspace.ProjectLogReviews.DivComponentArea.Text.Contains("Reviewed!")); Assert.IsTrue(workspace.GetStudyState() == "Committee Review", "State expected not in 'Committee Review'. State currently: " + workspace.GetStudyID()); // As the assigned IRB Coordinator, update review comments by Add Review Comments. workspace.AddReviewComments("More revised comments!"); // TODO VERIFY THE REVIEW COMMENTS // Log in as the assigned IRB Coordinator, Assign to Meeting. workspace.AssignMeetingByFirstMeeting(); Assert.IsTrue(workspace.GetStudyState() == "Committee Review", "State expected not in 'Committee Review'. State currently: " + workspace.GetStudyID()); // As the assigned IRB Coordinator¸ Submit Committee Review (Approved determination, “yes” to submit). workspace.SubmitCommitteeReview(SubmitCommitteeReviewPopup.Determinations.Approved, "2", "1", "0", "0", "0", "", true); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyID()); // As the assigned IRB Coordinator and Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyID()); // As the assigned IRB Coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Approved", "State expected not in 'Approved'. State currently: " + workspace.GetStudyID()); }
public void CreateAndSubmitStudyAsPIProxy() { string targetStudy = "AutoTestStudy-" + DataGen.String(5); var inboxPage = new Inbox(); var InitialStudySF = new InitialStudySmartForm(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); var workspace = new IRBWorkspace(); var ActivitiesNav = new ActivitiesNav(); //Log in as PI and Create New Study. Store.LoginAsUser(Users.Pi); actionsNav.ImgCreateNewStudyLink.Click(); InitialStudySF.NewSubmissionSmartformPage.TxtDescription.Value = "Random Automated test for IRB submission"; InitialStudySF.NewSubmissionSmartformPage.TxtTitleStudy.Value = targetStudy; InitialStudySF.NewSubmissionSmartformPage.TxtShortTitle.Value = targetStudy; InitialStudySF.NewSubmissionSmartformPage.RdoExternalIrbNo.Selected = true; InitialStudySF.NewSubmissionSmartformPage.RdoFinancialInterestNo.Selected = true; InitialStudySF.NewSubmissionSmartformPage.AttachProtocol(@"\\pdxstor\public\Aaron.Bentley\automation\testDoc.docx"); InitialStudySF.NewSubmissionSmartformPage.BtnContinue.Click(); // Funding Sources InitialStudySF.FundingSourcesPage.BtnContinue.Click(); // Study Team Members InitialStudySF.StudyTeamMembersPage.AddStudyTeamMember(false, false, "Bivens (pi2)", AddStudyTeamMemberPopup.Roles.CoInvestigator, AddStudyTeamMemberPopup.Roles.ResearchAssistant); InitialStudySF.StudyTeamMembersPage.BtnContinue.Click(); // Study Scope InitialStudySF.StudyScopePage.SpecifyExternalSite(false); InitialStudySF.StudyScopePage.SpecifyDrugsInvolved(false); InitialStudySF.StudyScopePage.SpecifyDevicesInvolved(false); InitialStudySF.StudyScopePage.BtnContinue.Click(); // Consent Forms and Recuitment Materials -- skip InitialStudySF.ConsentFormsRecruitmentPage.BtnContinue.Click(); // title / description -- skip InitialStudySF.StudyModCustomPage.BtnContinue.Click(); // Add supporting documents -- skip InitialStudySF.SupportingDocumentsPage.BtnContinue.Click(); // Final Page InitialStudySF.FinalPage.BtnFinish.Click(); // Assert the study appears in window title Wait.Until(h => Web.PortalDriver.Title == targetStudy); // get the id of the study string id = workspace.GetStudyID(); ActivitiesNav.LnkAssignPIProxy.Click(); // helper method for assignPI proxy? not frequently used... var AssignPIProxyPopup = new AssignPIProxyPopup(id, "Assign PI Proxy"); AssignPIProxyPopup.SwitchTo(); AssignPIProxyPopup.SelectFirstPerson(); AssignPIProxyPopup.BtnOk.Click(); AssignPIProxyPopup.ConfirmCredentials(Users.Pi.UserName, Users.Pi.Password); AssignPIProxyPopup.SwitchBackToParent(); Wait.Until(h => new Link(By.LinkText("PI Proxies updated")).Exists); Assert.IsTrue(new Link(By.LinkText("PI Proxies updated")).Exists, "'PI Proxies updated' activity not found for: " + targetStudy); Assert.IsTrue(workspace.GetStudyState() == "Pre-Submission"); workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(new Link(By.LinkText("Submitted")).Exists, "'Submitted' activity not found for: " + targetStudy); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review"); }
public void ContinuingReviewThroughNonCommitteeReviewThroughModsRequiredToApproved() { string targetStudy = "AutoTest-" + DataGen.String(5); EntityClonerUtil.CloneEntity("STUDY00000024", targetStudy, true); var CRSmartForm = new InitialModCrSmartForm(); var workspace = new IRBWorkspace(); var irbSubmissionsPage = new IRBSubmissions(); var actionsNav = new ActionsNav(); //Log in as the PI to an Approved study and select Create Modification/CR. Select “Continuing Review” and on the Continuing Review/Study Closure Information select the top 4 Research milestones. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(targetStudy); actionsNav.ImgCreateModCr.Click(); // Fill in just required info CRSmartForm.ChooseModCRPurpose(SubmissionPurpose.ContinuingReview); CRSmartForm.BtnContinue.Click(); CRSmartForm.SpecifyEnrollmentTotals("2", "2", "1"); CRSmartForm.ChooseResearchMilestone(InitialModCrSmartForm.MileStones.StudyPermanentlyClosedToEnrollment, InitialModCrSmartForm.MileStones.AllSubjectCompletedStudyRelatedInterventions, InitialModCrSmartForm.MileStones.CollectionOfPrivateInfoComplete, InitialModCrSmartForm.MileStones.AnalysisOfPrivateInfoComplete); CRSmartForm.RdoFinancialInterestNo.Click(); CRSmartForm.BtnContinue.Click(); CRSmartForm.BtnFinish.Click(); //As the PI, Submit the Continuing Review. workspace.Submit(Users.Pi.UserName, Users.Pi.Password); Assert.IsTrue(new Link(By.LinkText("Submitted")).Exists, "'Submitted' activity not found for: " + targetStudy); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review", "State expected not in 'Pre-Review'. State currently: " + workspace.GetStudyState()); var CRName = Web.PortalDriver.Title; // Log in as an IRB coordinator and Assign Coordinator Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.AssignCoordinator("Orlando Max (irbc)"); //Log in as the assigned coordinator and Submit Pre-Review workspace.SubmitPreReviewForCR(); Assert.IsTrue(workspace.GetStudyState() == "Pre-Review Completed", "State expected not in 'Pre-Review Completed'. State currently: " + workspace.GetStudyState()); // As the assigned IRBC, Assign Designated Reviewer. workspace.AssignDesignatedReviewer("Harry Smith (comm4)"); Assert.IsTrue(workspace.GetStudyState() == "Non-Committee Review", "State expected not in 'Non-Committee Review'. State currently: " + workspace.GetStudyState()); // Log in as the Designated Reviewer and Submit Designated Review (human research not engaged determination). Store.LoginAsUser(Users.Comm4); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.SubmitDesignatedReviewForStudy(SubmitDesignatedReview.StudyDeterminations.ModificationsRequiredToSecureApproved, "These are comments for the modification! :/ ",true); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned IRB Coordinator, Finalize Documents. Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.FinalizeDocuments(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Modifications Required", "State expected not in 'Modifications Required'. State currently: " + workspace.GetStudyState()); // Log in as the PI and Submit Response. Store.LoginAsUser(Users.Pi); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.SubmitResponse(Users.Pi.UserName, Users.Pi.Password, "This is my response! :P"); Assert.IsTrue(workspace.GetStudyState() == "Modifications Submitted", "State expected not in 'Modifications Submitted'. State currently: " + workspace.GetStudyState()); // Log in as the assigned IRB Coordinator, Review Required Modifications (Yes to the question “Were the modifications completed as required?” “yes” response) Store.LoginAsUser(Users.Irbc); irbSubmissionsPage.OpenSubmissionByAllSubmissions(CRName); workspace.ReviewRequiredModifications(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); //As the assigned coordinator, Prepare Letter. workspace.PrepareLetter(); Assert.IsTrue(workspace.GetStudyState() == "Post-Review", "State expected not in 'Post-Review'. State currently: " + workspace.GetStudyState()); // As the assigned coordinator, Send Letter. workspace.SendLetter(); Assert.IsTrue(workspace.GetStudyState() == "Approved", "State expected not in 'Approved'. State currently: " + workspace.GetStudyState()); }