public async Task <IActionResult> Edit( int id, [FromServices] IPackageRepository repo) { if (id == 0) { return(RedirectToAction( nameof(ManagePackagesController.Index))); } var aggregate = await repo.Get(id); if (aggregate == null) { return(RedirectToAction( nameof(ManagePackagesController.Index))); } var vm = new PackageFullEditViewModel(aggregate); return(View(vm)); }
public async Task DeletePostSuccessTest() { var controller = new ManagePackagesController(); var commandDependency = new Mock <ICommandHandler <UpdatePackageCommand> >(); commandDependency .Setup(m => m.HandleAsync(It.IsAny <UpdatePackageCommand>())) .Returns(Task.CompletedTask); var vm = new PackageFullEditViewModel(); var result = await controller.Edit(vm, commandDependency.Object); commandDependency.Verify(m => m.HandleAsync( It.IsAny <UpdatePackageCommand>()), Times.Once); var redirectResult = Assert.IsType <RedirectToActionResult>(result); Assert.Equal(nameof(ManagePackagesController.Index), redirectResult.ActionName); Assert.Null(redirectResult.ControllerName); }