Esempio n. 1
0
        public async Task UpdateChannelAddRoles()
        {
            await WithUpdateableChannel(client,
                                        channelDraft => DefaultChannelDraftWithRoles(channelDraft, new List <ChannelRole>
            {
                ChannelRole.InventorySupply
            }),
                                        async channel =>
            {
                Assert.Single(channel.Roles);
                Assert.Equal(ChannelRole.InventorySupply, channel.Roles[0]);

                var addedRoles = new List <ChannelRole> {
                    ChannelRole.OrderExport
                };
                var updateActions = new List <UpdateAction <Channel> >();
                var action        = new AddRolesUpdateAction {
                    Roles = addedRoles
                };
                updateActions.Add(action);

                var updatedChannel = await client
                                     .ExecuteAsync(new UpdateByIdCommand <Channel>(channel, updateActions));

                Assert.Equal(2, updatedChannel.Roles.Count);
                Assert.Contains(updatedChannel.Roles, role => role == addedRoles[0]);
                return(updatedChannel);
            });
        }
        public async Task UpdateStateAddRoles()
        {
            await WithUpdateableState(client,
                                      stateDraft => DefaultStateDraftWithType(stateDraft, StateType.LineItemState),
                                      async state =>
            {
                Assert.Empty(state.Roles);
                var stateRoles = new List <StateRole>
                {
                    StateRole.Return
                };
                var action = new AddRolesUpdateAction
                {
                    Roles = stateRoles
                };

                var updatedState = await client
                                   .ExecuteAsync(state.UpdateByKey(actions => actions.AddUpdate(action)));

                Assert.Single(updatedState.Roles);
                Assert.Equal(StateRole.Return, updatedState.Roles[0]);
                return(updatedState);
            });
        }