private void EditStudent(object sender, EventArgs e) { var form = new StudentInfoForm(); var presenter = new StudentInfoPresenter( m_model , m_mainForm.CurrentStudentRow as Student , form ); form.Show(); }
private void AssertOrAssignStudentInfo(StudentInfo info, AssertOrAssign mode) { var form = new StudentInfoForm(_chromeDriver); var wait = new OpenQA.Selenium.Support.UI.WebDriverWait(_chromeDriver, new TimeSpan(0, 0, LoadTimeoutSecs)); if (info.FirstName != null) { if (mode == AssertOrAssign.Assign) { form.FirstNameField.SetValue(info.FirstName); } else { Assert.AreEqual(info.FirstName, form.FirstNameField.GetValue()); } } if (info.LastName != null) { if (mode == AssertOrAssign.Assign) { form.LastNameField.SetValue(info.LastName); } else { Assert.AreEqual(info.LastName, form.LastNameField.GetValue()); } } if (info.Email != null) { if (mode == AssertOrAssign.Assign) { form.EmailField.SetValue(info.Email); } else { Assert.AreEqual(info.Email, form.EmailField.GetValue()); } } if (info.Gender != null) { switch (info.Gender) { case "Male": if (mode == AssertOrAssign.Assign) { form.MaleGenderField.SetValue("1"); } else { Assert.IsTrue(((RadioButtonElement)form.MaleGenderField).IsSelected()); } break; case "Female": if (mode == AssertOrAssign.Assign) { form.FemaleGenderField.SetValue("1"); } else { Assert.IsTrue(((RadioButtonElement)form.FemaleGenderField).IsSelected()); } break; case "Other": if (mode == AssertOrAssign.Assign) { form.OtherGenderField.SetValue("1"); } else { Assert.IsTrue(((RadioButtonElement)form.OtherGenderField).IsSelected()); } break; default: Assert.Fail($"Invalid Gender '{info.Gender}' supplied. Must be 'Male', 'Female' or 'Other'"); break; } } if (info.MobileNumber != null) { if (mode == AssertOrAssign.Assign) { form.MobileNumberField.Clear(); form.MobileNumberField.SetValue(info.MobileNumber); } else { Assert.AreEqual(info.MobileNumber, form.MobileNumberField.GetValue()); } } if (info.DateOfBirth != null) { if (mode == AssertOrAssign.Assign) { form.DateOfBirthField.SetValue(info.DateOfBirth); // hack to close the date picker form.MobileNumberField.Click(); } else { Assert.AreEqual(info.DateOfBirth, form.DateOfBirthField.GetValue()); } } if (!string.IsNullOrEmpty(info.Subjects)) { form.SubjectsField.SetValue(info.Subjects); } if (!string.IsNullOrEmpty(info.Hobbies)) { var hobbies = info.Hobbies.Split(",").Distinct().ToList(); if (hobbies.Contains("Sports")) { form.SportsField.SetValue("1"); } if (hobbies.Contains("Reading")) { form.ReadingField.SetValue("1"); } if (hobbies.Contains("Music")) { form.MusicField.SetValue("1"); } } if (!string.IsNullOrEmpty(info.State)) { form.StateField.SetValue(info.State); } if (!string.IsNullOrEmpty(info.City)) { form.CityField.SetValue(info.City); } }