//[Fact(DisplayName = "Delete entity. When delete folder: sub-folders should be deleted")] public async Task When_delete_folder_subfolder_should_be_deleted() { var res = await Harness.DeleteFolder(_parentFolderId, UserId, 1); res.Should().BeTrue(); var childFolderViews = await Folders.Find(new BsonDocument("ParentId", _parentFolderId)).ToListAsync(); childFolderViews.Should().HaveCount(2); foreach (IDictionary <string, object> childFolderView in childFolderViews) { var childFolder = await Session.Get <Folder>((Guid)childFolderView["_id"]); childFolder.IsDeleted.Should().BeTrue(); childFolder.UpdatedBy.Should().Be(UserId); childFolder.UpdatedDateTime.Should().NotBe(childFolder.CreatedDateTime); childFolderView.Should().EntityShouldBeEquivalentTo(childFolder); var childNodeView = await Nodes.Find(new BsonDocument("_id", childFolder.Id)).FirstOrDefaultAsync() as IDictionary <string, object>; childNodeView.Where(kvp => kvp.Key != "IsDeleted").ToDictionary(k => k.Key, v => v.Value) .Should().NodeShouldBeEquivalentTo(childFolder); childNodeView["IsDeleted"].As <bool>().Should().BeTrue(); } }
//[Fact(DisplayName = "Delete entity. When delete folder: files inside should be deleted")] public async Task When_delete_folder_files_inside_should_be_deleted() { var res = await Harness.DeleteFolder(_parentFolderId, UserId, 1); res.Should().BeTrue(); (await Files.Find(new BsonDocument("_id", _fileId)) .Project <DeletedEntity>("{IsDeleted:1}") .FirstOrDefaultAsync()) .IsDeleted.Should().BeTrue(); (await GetNode(_fileId)) .IsDeleted.Should().BeTrue(); }
//[Fact(DisplayName = "Delete entity. When delete folder it should be deleted")] public async Task When_delete_folder_it_should_be_deleted() { var res = await Harness.DeleteFolder(_parentFolderId, UserId, 1); res.Should().BeTrue(); var folder = await Session.Get <Folder>(_parentFolderId); folder.IsDeleted.Should().BeTrue(); folder.UpdatedBy.Should().Be(UserId); folder.UpdatedDateTime.Should().NotBe(folder.CreatedDateTime); var folderView = await Folders.Find(new BsonDocument("_id", _parentFolderId)).FirstOrDefaultAsync() as IDictionary <string, object>; folderView.Should().EntityShouldBeEquivalentTo(folder); var nodeView = await Nodes.Find(new BsonDocument("_id", folder.Id)).FirstOrDefaultAsync() as IDictionary <string, object>; nodeView.Where(kvp => kvp.Key != "IsDeleted").ToDictionary(k => k.Key, v => v.Value) .Should().NodeShouldBeEquivalentTo(folder); nodeView["IsDeleted"].As <bool>().Should().BeTrue(); }