public async Task CanMove_should_not_throw_exception_when_added_to_root() { var command = new MoveAssetFolder { AppId = appId }; await GuardAssetFolder.CanMove(command, assetQuery, DomainId.NewGuid(), DomainId.NewGuid()); }
public async Task CanMove_should_not_throw_exception_if_folder_has_not_changed() { var command = new MoveAssetFolder { AppId = appId, ParentId = DomainId.NewGuid() }; await GuardAssetFolder.CanMove(command, AssetFolder(parentId : command.ParentId), assetQuery); }
public async Task CanMove_should_not_throw_exception_if_added_to_root() { var command = new MoveAssetFolder { AppId = appId }; await GuardAssetFolder.CanMove(command, AssetFolder(), assetQuery); }
public async Task CanMove_should_not_throw_exception_when_folder_has_not_changed() { var command = new MoveAssetFolder { ParentId = Guid.NewGuid() }; await GuardAssetFolder.CanMove(command, assetQuery, Guid.NewGuid(), command.ParentId); }
public async Task CanMove_should_throw_exception_when_folder_has_not_changed() { var command = new MoveAssetFolder { ParentId = Guid.NewGuid() }; await ValidationAssert.ThrowsAsync(() => GuardAssetFolder.CanMove(command, assetQuery, Guid.NewGuid(), command.ParentId), new ValidationError("Asset folder is already part of this folder.", "ParentId")); }
private async Task MoveCore(MoveAssetFolder c) { var operation = await AssetFolderOperation.CreateAsync(serviceProvider, c, () => Snapshot); if (!c.OptimizeValidation) { await operation.MustMoveToValidFolder(c.ParentId); } Move(c); }
public static Task CanMove(MoveAssetFolder command, IAssetFolderEntity assetFolder, IAssetQueryService assetQuery) { Guard.NotNull(command, nameof(command)); return(Validate.It(async e => { if (command.ParentId != assetFolder.ParentId) { await CheckPathAsync(command.AppId.Id, command.ParentId, assetQuery, assetFolder.Id, e); } })); }
public async Task CanMove_should_throw_exception_if_folder_not_found() { var command = new MoveAssetFolder { AppId = appId, ParentId = DomainId.NewGuid() }; A.CallTo(() => assetQuery.FindAssetFolderAsync(appId.Id, command.ParentId, A <CancellationToken> ._)) .Returns(new List <IAssetFolderEntity>()); await ValidationAssert.ThrowsAsync(() => GuardAssetFolder.CanMove(command, AssetFolder(), assetQuery), new ValidationError("Asset folder does not exist.", "ParentId")); }
public static Task CanMove(MoveAssetFolder command, IAssetQueryService assetQuery, DomainId id, DomainId oldParentId) { Guard.NotNull(command, nameof(command)); return(Validate.It(() => "Cannot move asset.", async e => { if (command.ParentId != oldParentId) { await CheckPathAsync(command.AppId.Id, command.ParentId, assetQuery, id, e); } })); }
public async Task CanMove_should_throw_exception_when_folder_not_found() { var command = new MoveAssetFolder { ParentId = Guid.NewGuid() }; A.CallTo(() => assetQuery.FindAssetFolderAsync(command.ParentId)) .Returns(new List <IAssetFolderEntity>()); await ValidationAssert.ThrowsAsync(() => GuardAssetFolder.CanMove(command, assetQuery, Guid.NewGuid(), Guid.NewGuid()), new ValidationError("Asset folder does not exist.", "ParentId")); }
public async Task CanMove_should_not_throw_exception_if_folder_found() { var command = new MoveAssetFolder { AppId = appId, ParentId = DomainId.NewGuid() }; A.CallTo(() => assetQuery.FindAssetFolderAsync(appId.Id, command.ParentId, A <CancellationToken> ._)) .Returns(new List <IAssetFolderEntity> { AssetFolder() }); await GuardAssetFolder.CanMove(command, AssetFolder(), assetQuery); }
public async Task CanMove_should_not_throw_exception_when_folder_found() { var command = new MoveAssetFolder { ParentId = Guid.NewGuid() }; A.CallTo(() => assetQuery.FindAssetFolderAsync(command.ParentId)) .Returns(new List <IAssetFolderEntity> { CreateFolder() }); await GuardAssetFolder.CanMove(command, assetQuery, Guid.NewGuid(), Guid.NewGuid()); }
public static Task CanMove(MoveAssetFolder command, IAssetQueryService assetQuery, Guid id, Guid oldParentId) { Guard.NotNull(command); return(Validate.It(() => "Cannot move asset.", async e => { if (command.ParentId == oldParentId) { e("Asset folder is already part of this folder.", nameof(command.ParentId)); } else { await CheckPathAsync(command.ParentId, assetQuery, id, e); } })); }
public async Task CanMove_should_throw_exception_if_adding_to_its_own_child() { var id = DomainId.NewGuid(); var command = new MoveAssetFolder { AppId = appId, ParentId = DomainId.NewGuid() }; A.CallTo(() => assetQuery.FindAssetFolderAsync(appId.Id, command.ParentId, A <CancellationToken> ._)) .Returns(new List <IAssetFolderEntity> { AssetFolder(id), AssetFolder(command.ParentId) }); await ValidationAssert.ThrowsAsync(() => GuardAssetFolder.CanMove(command, AssetFolder(id), assetQuery), new ValidationError("Cannot add folder to its own child.", "ParentId")); }
public async Task CanMove_should_throw_exception_when_adding_to_its_own_child() { var id = Guid.NewGuid(); var command = new MoveAssetFolder { ParentId = Guid.NewGuid() }; A.CallTo(() => assetQuery.FindAssetFolderAsync(command.ParentId)) .Returns(new List <IAssetFolderEntity> { CreateFolder(id), CreateFolder(command.ParentId) }); await ValidationAssert.ThrowsAsync(() => GuardAssetFolder.CanMove(command, assetQuery, id, Guid.NewGuid()), new ValidationError("Cannot add folder to its own child.", "ParentId")); }
public async Task Move_should_create_events_and_update_state() { var command = new MoveAssetFolder { ParentId = parentId }; await ExecuteCreateAsync(); var result = await PublishIdempotentAsync(command); result.ShouldBeEquivalent(sut.Snapshot); Assert.Equal(parentId, sut.Snapshot.ParentId); LastEvents .ShouldHaveSameEvents( CreateAssetFolderEvent(new AssetFolderMoved { ParentId = parentId }) ); }
public void Move(MoveAssetFolder command) { RaiseEvent(SimpleMapper.Map(command, new AssetFolderMoved())); }
public void Move(MoveAssetFolder command) { Raise(command, new AssetFolderMoved()); }
private void Move(MoveAssetFolder command) { Raise(command, new AssetFolderMoved()); }