private void AcceptButton_Click(object sender, EventArgs e) { // Pin Code PinVAL pinCode = null; // Validate Pin Code try { pinCode = new PinVAL(PinCodeTextBox.Text); } catch (PinVAL_Exception p_e) { ErrorLabel.Text = p_e.What(); ErrorLabel.Show(); } if (pinCode != null) { // Login basic user if (pinCode._Value.Length == 4) { try { // Connect with basic users database MockBasicUsersRepository mockBasicUsersRepository = new MockBasicUsersRepository(SystemSettings._PlatformType); // Get information about basic user with respectively pin code // from database BasicUserPanelVM basicUserPanelVM = new BasicUserPanelVM { basicUser = mockBasicUsersRepository.GetAll().FirstOrDefault( (singleBasicUser) => singleBasicUser._Pin._Value == pinCode._Value) }; // Check basic user's find result if (basicUserPanelVM.basicUser != null) { // Redirect to Basic User Panel basicUserPanelVM.loginPanel = this; BasicUserPanel basicUserPanel = new BasicUserPanel(basicUserPanelVM); this.PinCodeTextBox.Clear(); this.ErrorLabel.Hide(); basicUserPanel.Show(); this.Hide(); } else { ErrorLabel.Text = "!!! Użytkownik O Podanym Pinie Nie Istnieje !!!"; ErrorLabel.Show(); } } catch (MockBasicUsersRepository_Exception mbur_e) { ErrorLabel.Text = mbur_e.What(); ErrorLabel.Show(); } } // Login administrator else if (pinCode._Value.Length == 6) { try { // Connect with administrators database MockAdministratorsRepository mockAdministratorsRepository = new MockAdministratorsRepository(SystemSettings._PlatformType); // Get information about administrator with respectively pin code // from database AdministratorPanelVM administratorPanelVM = new AdministratorPanelVM { administrator = mockAdministratorsRepository.GetAll(). FirstOrDefault((singleAdministrator) => singleAdministrator._Pin._Value == pinCode._Value) }; // Check administrator's find result if (administratorPanelVM.administrator != null) { // Redirect to administrator panel administratorPanelVM.loginPanel = this; AdministratorPanel administratorPanel = new AdministratorPanel(administratorPanelVM); this.PinCodeTextBox.Clear(); this.ErrorLabel.Hide(); administratorPanel.Show(); this.Hide(); } else { ErrorLabel.Text = "!!! Użytkownik O Podanym Pinie Nie Istnieje !!!"; ErrorLabel.Show(); } } catch (MockAdministratorsRepository_Exception mar_e) { ErrorLabel.Text = mar_e.What(); ErrorLabel.Show(); } } } }
MockAdministratorsRepository_When_Find_Administrator_By_Pin( string[] administratorsData, string pin, string expected) { string result = "OK"; //arrange MockAdministratorsRepository mockAdministratorsRepository = null; Administrator administrator = null; var insertAdministrators = new List <string[]>(); //Convert administrators data foreach (var administratorData in administratorsData) { insertAdministrators.Add( administratorData.Split(';')); } //Save administrators data using (StreamWriter sw = new StreamWriter( (cashDispenserLibraryTestSettings._SystemSettings == PlatformType.Windows) ? "cashDispenserDatabase\\Administrators.txt" : "cashDispenserDatabase/Administrators.txt", false)) { foreach (var administratorData in administratorsData) { sw.WriteLine(administratorData); } } //act //Connect with database try { mockAdministratorsRepository = new MockAdministratorsRepository( cashDispenserLibraryTestSettings._SystemSettings); } catch (MockAdministratorsRepository_Exception mar_e) { result = mar_e.What(); } //Find administrator by pin number if (result.Equals("OK")) { try { administrator = mockAdministratorsRepository.GetAll().FirstOrDefault( (singleAdministrator) => singleAdministrator._Pin._Value.Equals(pin)); if (administrator == null) { result = "!!! Administrator with it pin does not exist !!!"; } } catch (MockAdministratorsRepository_Exception mar_e) { result = mar_e.What(); } // Check received administrator information if (result.Equals("OK")) { var insertAdministratorWithPin = insertAdministrators.FirstOrDefault( (insertAdministrator) => insertAdministrator[1].Equals(pin)); if (((insertAdministratorWithPin[0].Equals( administrator._Id.ToString())) == false) || ((insertAdministratorWithPin[1].Equals( administrator._Pin._Value)) == false) || ((insertAdministratorWithPin[2].Equals( administrator._Name._Value)) == false) || ((insertAdministratorWithPin[3].Equals( administrator._Surname._Value)) == false)) { result = "!!! Bad receive administrator's information !!!"; } } } //assert Assert.AreEqual(expected: expected, actual: result); }