public async Task <ActionResult> Settings(Settings.Command model) { model.WithUserId(User.Identifier()); var r = await _mediator.Send(model); return(this.OkOrError(r)); }
/// <summary> /// Initializes a new instance of the <see cref="BaseCommand" /> class. /// </summary> /// <param name="action">The action that runs this Command.</param> /// <param name="commandSettings">The command associated with this Command.</param> /// <param name="loggerFactory">The logger factory.</param> /// <exception cref="ArgumentNullException">action</exception> protected BaseCommand(IAction action, Settings.Command commandSettings, ILoggerFactory loggerFactory) { Action = action ?? throw new ArgumentNullException(nameof(action)); Settings = commandSettings ?? throw new ArgumentNullException(nameof(commandSettings)); Logger = loggerFactory.CreateLogger <BaseCommand>(); }
public static CommandResult Execute <TCommand>(Func <IAction, Settings.Command, ILoggerFactory, TCommand> commandFactory, ILoggerFactory loggerFactory, string packageFileName, Settings.Command commandSettings, PackageEvent packageEvent) where TCommand : BaseCommand { var package = Package.CreateFromFile(packageFileName); var mockRepository = new Mock <IRepository <Package> >(); mockRepository .Setup(m => m.Name) .Returns("MockRepository"); mockRepository .Setup(m => m.FetchAsync(It.IsAny <string>(), It.IsAny <string>())) .ReturnsAsync(package); var mockAction = new Mock <IAction>(); mockAction .Setup(a => a.SourceRepository) .Returns(mockRepository.Object); var commandUnderTest = commandFactory(mockAction.Object, commandSettings, loggerFactory); return(commandUnderTest.Execute(package, packageEvent)); }
/// <summary> /// Creates the specified action. /// </summary> /// <param name="action">The action associated with this Command.</param> /// <param name="commandSettings">The settings associated with this Command.</param> /// <returns>Returns an instance of the SyncAction which is an instance of IAction.</returns> /// <exception cref="ArgumentNullException">actionSettings /// or /// settings /// or /// serviceProvider</exception> /// <exception cref="InvalidOperationException"></exception> /// <exception cref="NotImplementedException"></exception> public abstract ICommand Create(IAction action, Settings.Command commandSettings);