using System; using System.Linq; using adMoto.Payments.Core.Data; using adMoto.Payments.Test.Fakes; using adMoto.Payments.Core; using adMoto.Payments.Core.Interfaces; using WatiN.Core; namespace adMoto.Payments.Test.UI { public class UIHelper { private readonly TestDataHelper _testDataHelper = new TestDataHelper(); private IRepository _repInvoices = new Repository(new DataContext()); private IRepository _repInvoiceDetails = new Repository(new DataContext()); private IRepository _repPayment; private UIData uiData; private string nip = "test"; //testowy klient o id 76131 private string numer_faktury = "1/SLJ/1"; public static string LoginSite = "http://localhost:3646/pl/Account/LogOn"; public static string ConfirmForm = "http://localhost:3646/pl/Platnosc/Form"; public UIData CreateAndAddTestRecordToRepository(int amount) { var invoices = new FAKTURY { NUMER = 1, NUMER_ROZ = "SLJ", NUMER_ROK = 1, NABYWCA_NIP = nip, ID_SPRZEDAWCY = 2, ID_NABYWCY = 76131, //testowy klient waluta_brutto = Convert.ToDouble(amount), waluta_miano = "EUR" }; _repInvoices.Insert(invoices); var invoice = _repInvoices.Find(p => p.NUMER == 1 && p.NUMER_ROK == 1 && p.NUMER_ROZ == "SLJ" && p.ID_NABYWCY == 76131).FirstOrDefault(); if (invoice != null) { var invoiceDetails = new FAKTURA_DETAIL { ID_FAKTURY = invoice.ID_FAKTURY, SYMBOL_SWW = "TEST" }; _repInvoiceDetails.Insert(invoiceDetails); var invoiceDetails2 = _repInvoiceDetails.Find(p => p.ID_FAKTURY == invoiceDetails.ID_FAKTURY && p.SYMBOL_SWW == "TEST").FirstOrDefault(); if (invoiceDetails2 != null) { uiData = new UIData { FAKTURA_ID = Convert.ToInt32(invoiceDetails2.ID_FAKTURY), FAKTURA_DETAIL_ID = invoiceDetails2.ID_FAKTURA_DETAILS, Test_nip = nip, Test_numer_faktury = numer_faktury }; } } return uiData; } public void DeleteTestRecordsFromRepository(UIData uiData) { var invoice = _repInvoices.Find(p => p.ID_FAKTURY == uiData.FAKTURA_ID).FirstOrDefault(); if (invoice != null) _repInvoices.Delete(invoice); var invoiceDetails = _repInvoiceDetails.Find(p => p.ID_FAKTURA_DETAILS == uiData.FAKTURA_DETAIL_ID).FirstOrDefault(); if (invoiceDetails != null) _repInvoiceDetails.Delete(invoiceDetails); } public void DeleteTestPaymentFromRepository(UIData uiData) { _repPayment = new Repository(new DataContext()); var payment = _repPayment.Find(p => p.IDFaktury == uiData.FAKTURA_ID && p.NAME == uiData.Test_firstname && p.SURNAME == uiData.Test_surname && p.ORDERDESCRIPTION == uiData.Test_numer_faktury && p.nip == uiData.Test_nip).FirstOrDefault(); if (payment != null) _repPayment.Delete(payment); } public void SearchAndClean() { var invoices = _repInvoices.FindAll(p => p.NUMER == 1 && p.NUMER_ROK == 1 && p.NUMER_ROZ == "SLJ" && p.ID_NABYWCY == 76131); for (int i = 0; i < invoices.Count; i++) { var id_faktury = invoices[i].ID_FAKTURY; if (invoices[i] != null) _repInvoices.Delete(invoices[i]); var invoiceDetails = _repInvoiceDetails.FindOne(p => p.ID_FAKTURY == id_faktury); if (invoiceDetails != null) _repInvoiceDetails.Delete(invoiceDetails); } } public void CloseWebBrowser(IE ie) { ie.ForceClose(); ie.Close(); ie.Dispose(); } } }