Esempio n. 1
0
        public static SalesOrderItemEditComponent BuildForDefaults(this SalesOrderItemEditComponent @this, SalesOrderItem salesOrderItem)
        {
            @this.SalesOrderItemInvoiceItemType_1.Select(salesOrderItem.InvoiceItemType);
            @this.PriceableAssignedUnitPrice_2.Set(salesOrderItem.AssignedUnitPrice.ToString());
            @this.Description.Set(salesOrderItem.Description);
            @this.Comment.Set(salesOrderItem.Comment);
            @this.InternalComment.Set(salesOrderItem.InternalComment);

            return(@this);
        }
        public void EditWithSerialisedProductItemDefaults()
        {
            var salesOrder = new SalesOrders(this.Session).Extent().FirstOrDefault();

            var before = new SalesOrderItems(this.Session).Extent().ToArray();

            var disposableSalesOrder = new SalesOrderBuilder(this.Session).WithOrganisationInternalDefaults(this.internalOrganisation).Build();
            var expected             = disposableSalesOrder.SalesOrderItems.First(v => v.InvoiceItemType.IsProductItem);

            var salesOrderItem = salesOrder.SalesOrderItems.First(v => v.InvoiceItemType.IsProductItem);
            var id             = salesOrderItem.Id;

            this.Session.Derive();

            var expectedDescription       = expected.Description;
            var expectedComment           = expected.Comment;
            var expectedInternalComment   = expected.InternalComment;
            var expectedInvoiceItemType   = expected.InvoiceItemType;
            var expectedProduct           = expected.Product;
            var expectedSerialisedItem    = expected.SerialisedItem;
            var expectedQuantityOrdered   = expected.QuantityOrdered;
            var expectedAssignedUnitPrice = expected.AssignedUnitPrice;

            this.salesOrderListPage.Table.DefaultAction(salesOrder);
            var salesOrderOverview          = new SalesOrderOverviewComponent(this.salesOrderListPage.Driver);
            var salesOrderItemOverviewPanel = salesOrderOverview.SalesorderitemOverviewPanel.Click();

            salesOrderItemOverviewPanel.Table.DefaultAction(salesOrderItem);

            var salesOrderItemEdit = new SalesOrderItemEditComponent(this.Driver);

            salesOrderItemEdit.Description.Set(expected.Description);
            salesOrderItemEdit.Comment.Set(expected.Comment);
            salesOrderItemEdit.InternalComment.Set(expected.InternalComment);
            salesOrderItemEdit.PriceableAssignedUnitPrice_2.Set(expected.AssignedUnitPrice.ToString());

            this.Session.Rollback();
            salesOrderItemEdit.SAVE.Click();

            this.Driver.WaitForAngular();
            this.Session.Rollback();

            var after = new SalesOrderItems(this.Session).Extent().ToArray();

            var actual = (SalesOrderItem)this.Session.Instantiate(id);

            Assert.Equal(after.Length, before.Length);

            Assert.Equal(expectedDescription, actual.Description);
            Assert.Equal(expectedComment, actual.Comment);
            Assert.Equal(expectedInternalComment, actual.InternalComment);
            Assert.Equal(expectedInvoiceItemType, actual.InvoiceItemType);
            Assert.Equal(expectedAssignedUnitPrice, actual.AssignedUnitPrice);
        }
Esempio n. 3
0
        public static SalesOrderItemEditComponent BuildForPartItemDefaults(this SalesOrderItemEditComponent @this, SalesOrderItem salesOrderItem)
        {
            @this.SalesOrderItemInvoiceItemType_2.Select(salesOrderItem.InvoiceItemType);
            @this.Product.Select(salesOrderItem.Product.Name);
            @this.QuantityOrdered.Set(salesOrderItem.QuantityOrdered.ToString());
            @this.SerialisedItem.Select(salesOrderItem.SerialisedItem);
            @this.PriceableAssignedUnitPrice_2.Set(salesOrderItem.AssignedUnitPrice.ToString());
            @this.Description.Set(salesOrderItem.Description);
            @this.Comment.Set(salesOrderItem.Comment);
            @this.InternalComment.Set(salesOrderItem.InternalComment);

            return(@this);
        }