public void UpdateInventoryEntryByIdSetRestockableInDays()
        {
            IClient        commerceToolsClient = this.inventoryFixture.GetService <IClient>();
            InventoryEntry inventoryEntry      = this.inventoryFixture.CreateInventoryEntry();

            int newRestockableInDays = TestingUtility.RandomInt(1, 100);
            List <UpdateAction <InventoryEntry> > updateActions = new List <UpdateAction <InventoryEntry> >();

            SetRestockableInDaysUpdateAction setRestockableInDaysUpdateAction = new SetRestockableInDaysUpdateAction()
            {
                RestockableInDays = newRestockableInDays
            };

            updateActions.Add(setRestockableInDaysUpdateAction);

            //Increments quantityOnStock and updates availableQuantity according to the new quantity
            InventoryEntry retrievedInventoryEntry = commerceToolsClient
                                                     .ExecuteAsync(new UpdateByIdCommand <InventoryEntry>(new Guid(inventoryEntry.Id), inventoryEntry.Version,
                                                                                                          updateActions)).Result;

            this.inventoryFixture.InventoryEntries.Add(retrievedInventoryEntry);

            Assert.Equal(retrievedInventoryEntry.Id, inventoryEntry.Id);
            Assert.Equal(newRestockableInDays, retrievedInventoryEntry.RestockableInDays);
        }
        public async void UpdateInventoryEntrySetRestockableInDays()
        {
            await WithUpdateableInventoryEntry(client, DefaultInventoryEntryDraft,
                                               async inventoryEntry =>
            {
                var restockableInDays = TestingUtility.RandomInt(1, 100);
                var action            = new SetRestockableInDaysUpdateAction
                {
                    RestockableInDays = restockableInDays
                };

                var updatedInventoryEntry = await client
                                            .ExecuteAsync(inventoryEntry.UpdateById(actions => actions.AddUpdate(action)));


                Assert.Equal(restockableInDays, updatedInventoryEntry.RestockableInDays);

                SetRestockableInDaysUpdateAction action2 = new SetRestockableInDaysUpdateAction();
                var updatedInventoryEntry2 = await client
                                             .ExecuteAsync(updatedInventoryEntry.UpdateById(actions => actions.AddUpdate(action2)));
                Assert.Null(updatedInventoryEntry2.RestockableInDays);

                return(updatedInventoryEntry2);
            });
        }