using Centron.BusinessLogic; using Centron.BusinessLogic.Sales.Receipts.DataAndResults; using Centron.BusinessLogic.WebServices.Sales.Receipts; using Centron.Interfaces.Administration.Environment; using Centron.Interfaces.BL; using Centron.Interfaces.Sales.Receipts; using Centron.Tests.EndToEnd.Infrastructure; using CentronSoftware.Centron.WebServices.Entities.Sales.Receipts.SupplierDeliveryLists; using Xunit; using Xunit.Abstractions; namespace Centron.Tests.EndToEnd.Tests.SupplierReceipts { public class DelayedSupplierDeliveryListBooking : EndToEndTest { private const string VERIFIER_PREFIX = "DelayedSupplierDeliveryListBooking"; public DelayedSupplierDeliveryListBooking(ITestOutputHelper testOutputHelper) : base(testOutputHelper) { } public override void Execute() { var sharedCode = new SupplierReceiptTestsSharedCode(Verifier); var currentUser = GetLoggedInUser(); var customerOrderI3D = sharedCode.CreateCustomerOrder(currentUser, null); var supplierOrder = sharedCode.CreateSupplierOrderForCustomerOrder(currentUser, null, customerOrderI3D); var supplierDeliveryList = sharedCode.CreateSupplierDeliveryList(currentUser, VERIFIER_PREFIX + "_0", supplierOrder.I3D, true); // Test case special supplierDeliveryList.LateBooking = false; var savedReceiptResult = new BLSession().GetBL().SaveReceipt(supplierDeliveryList, currentUser.User, new SaveReceiptData() { IgnoreCallbacks = true }, false, CreatedThroughApplication.CentronNet, null); Assert.True(savedReceiptResult.Status == ResultStatus.Success, savedReceiptResult.Message); supplierDeliveryList = (ReceiptSupplierDeliveryListDTO)savedReceiptResult.Data.Receipt; sharedCode.Verify_Article_Fields(VERIFIER_PREFIX + "_1", "AfterSupplierDeliveryListBooked"); sharedCode.Verify_Intake_Table(VERIFIER_PREFIX + "_1", "AfterSupplierDeliveryListBooked", supplierOrder.I3D); sharedCode.CreateSupplierInvoice(currentUser, VERIFIER_PREFIX + "_2", supplierOrder.I3D, supplierDeliveryList.I3D); } } }