private void RunIssuingTest(IssuingTestCase tc, out string doc_ID, [CallerMemberName] string callerName = "") { LoginDetails login = tc.Login; TravellerDetails traveller = tc.Traveller; PurchaseDetails purchase = tc.Purchase; RefundDetails refund = tc.Refund; bool loggedIn = S1.Login(login.Username, login.Password); Assert.IsTrue(loggedIn); WebDriver.WaitForElement(S1.IssuingPage.AutofillSearchButton, 10); //System.Threading.Thread.Sleep(3000); if (traveller.Autofill != null && !string.IsNullOrEmpty(traveller.Autofill.Identifier)) { if (S1.IssuingPage.AddTokenButton.Visible) { S1.IssuingPage.AddTokenButton.Click(); WebDriver.SwitchTo().Frame("travellerIFrame"); SetValue(traveller.Autofill.Identifier, S1, s1 => s1.SGPIdentifier); S1.IssuingPage.SG_IDSaveButton.Click(); WebDriver.SwitchTo().DefaultContent(); } else { SetValue(traveller.Autofill.Identifier, S1, s1 => s1.Identifier); } if (traveller.Autofill.Identifier == traveller.Passport.Number) { WebDriver.TabAndReturnFocusedElement(); if (S1.IssuingPage.AutofillSearchButton.Visible) { S1.IssuingPage.AutofillSearchButton.Click(); } if (!string.IsNullOrEmpty(traveller.Passport.Country)) { SetValue(traveller.Passport.Country.ToUpper(), S1, s1 => s1.PassportAutofillCountry); } } bool autofill = S1.SearchAutofillTraveller(); System.Threading.Thread.Sleep(3000); if (!autofill) { Bitmap screenshot = WebDriver.TakeScreenshot(); SaveBitmap(WebDriver.TakeScreenshot(), "BasicIssuingwithAutofillTest_" + login.Username); throw new AssertionException("Basic Issuing with Autofill failed for user: "******"dd/MM/yyyy"); //if (item.Receipt.Date == "" || DateTime.Today.Date.Subtract(Convert.ToDateTime(Convert.ToDateTime(item.Receipt.Date) // .ToString("dd/MM/yyyy"))).Days > 60) //{ item.Receipt.Date = receiptDate; //} } catch (Exception) { } SetValue(item.Receipt.Date, currentRow, row => row.ReceiptDate); } SetValue(item.Description, currentRow, row => row.GoodsDescription); SetValue(item.Quantity, currentRow, row => row.Quantity); SetValue(item.Price, currentRow, row => row.Price); SetValue(item.PurchaseAmount, currentRow, row => row.PurchaseAmount); SetValue(item.GrossAmount, currentRow, row => row.GrossAmount); SetValue(item.Amount1, currentRow, row => row.Amount1); SetValue(item.Amount2, currentRow, row => row.Amount2); SetValue(item.Amount3, currentRow, row => row.Amount3); SetValue(item.Amount4, currentRow, row => row.Amount4); SetValue(item.Amount5, currentRow, row => row.Amount5); SetValue(item.Vat, currentRow, row => row.VAT); } SetValue(purchase.PurchaseDate, S1, s1 => s1.PurchaseDate); SetValue(purchase.MerchandiseDescription, S1, s1 => s1.MerchandiseDescription); SetValue(purchase.ShopInvoiceNumber, S1, s1 => s1.ShopInvoiceNumber); var result = S1.IssueTff(); string docid = result.DocID; doc_ID = docid; if (string.IsNullOrEmpty(docid) && !tc.ExpectError) { SaveBitmap(result.Bitmap, callerName + "_" + tc.Login.Username); throw new AssertionException("Issuing TFF failed with error: " + result.ToastMsg); } else if (string.IsNullOrEmpty(docid) && tc.ExpectError) { Assert.Pass("TFF was not issued (expected behavior), with error: " + result.ToastMsg); } else { //Assert.Pass("TFF was issued successfully. DocID: " + docid); S1.IssuingPage.CloseButton.Click(); } }