public void ShouldExecute() { DynamicMock webBrowserMock = new DynamicMock(typeof(IE.WebBrowser)); PaymentInfo info = new PaymentInfo(); info.State = State.IDLE; PaymentProvider provider = GetProvider(); PaymentInfo result = provider.Execute(new PaymentRequest(webBrowserMock.MockInstance as IE.WebBrowser, info)); Assert.AreSame(info, result); webBrowserMock.Verify(); }
public void ShouldDoNothingOnExecute() { DynamicMock webBrowserMock = new DynamicMock(typeof(IE.WebBrowser)); webBrowserMock.ExpectAndReturn("get_LocationURL", Settings.Default.ChoseBankLink + Settings.Default.PluginVersion); PaymentInfo info = new PaymentInfo(); info.State = State.IDLE; PaymentProvider provider = GetProvider(); PaymentInfo result = provider.Execute(new PaymentRequest(webBrowserMock.MockInstance as IE.WebBrowser, info)); Assert.AreSame(info, result); webBrowserMock.Verify(); }
public void ShouldOpenListInNewTab() { DynamicMock webBrowserMock = new DynamicMock(typeof(IE.WebBrowser)); webBrowserMock.ExpectAndReturn("get_LocationURL", Settings.Default.ChoseBankLink + "yyy"); webBrowserMock.Expect("Navigate2", Settings.Default.ChoseBankLink + Settings.Default.PluginVersion, 0x2, "_self", null, null); PaymentInfo info = new PaymentInfo(); info.State = State.IDLE; PaymentProvider provider = GetProvider(); PaymentInfo result = provider.Execute(new PaymentRequest(webBrowserMock.MockInstance as IE.WebBrowser, info)); Assert.AreSame(info, result); webBrowserMock.Verify(); }
/// <summary> /// Event invoked when user clicks "Pay" button in the sidebar. /// </summary> /// <param name="sender">pressed button's object</param> /// <param name="e">event arguments</param> private void PayButton_Click(object sender, System.EventArgs e) { try { Settings.Default.ReloadCount = 0; HtmlElement element = sender as HtmlElement; int idx = int.Parse(element.GetAttribute("index")); PaymentProvider provider = ProviderFactory.GetProvider(Util.GetProviderId(IEApp.LocationURL), true); paymentInfo[idx] = PaymentInfo.ValueOf(webBrowser.Document, paymentInfo[idx].Id); // leave original object unchanged PaymentInfo info = paymentInfo[idx].Clone(); Util.SetCurrentPaymentInfo(info.ToString()); provider.Execute(new PaymentRequest(IEApp, info, true)); Util.SetCurrentPaymentInfo(info.ToString()); } catch (Exception ex) { Util.ShowErrorMessage(ex.ToString()); } }
/// <summary> /// Event invoked when IE browser completes loading the document. /// </summary> private void IEModule_DocumentComplete(object pDisp, string url) { try { if ("https://irachunki.pl/miniWeb/definedTransferSave.action".Equals(url)) { SendMessageToAll(WM_REFRESH); return; } Util.SetUpdatedPaymentInfo(""); PaymentInfo info = PaymentInfo.ValueOf(Application.UserAppDataRegistry.GetValue(Util.CURRENT_PAYMENT).ToString()); if (info.State != State.INVALID && Visible == true) { PaymentProvider tmp = ProviderFactory.GetProvider(Util.GetProviderId(IEApp.LocationURL)); info = tmp.Execute(new PaymentRequest(IEApp, info, url)); Util.SetCurrentPaymentInfo(info.ToString()); } if (info.State == State.PAID) { String markAmount = info.AmountPaid.Replace(".", ","); if (info.AmountToPayInt <= info.AmountPaidInt) { markAmount = info.AmountToPay.Replace(".", ","); } if (Util.ShowYesNoQuestion(this, String.Format(Resources.MarkAsPaidQuestion, markAmount)) == true) { MarkAsPaid(info, true); } Util.SetCurrentPaymentInfo(""); } } catch (Exception e) { Util.SetCurrentPaymentInfo(""); Util.ShowErrorMessage(e.ToString()); } }