public async Task <Contract.Models.Folder> UpdateOne(string id, Contract.Models.Folder item) { var filter = Builders <Contract.Models.Folder> .Filter.Eq(x => x.Id, id); var result = await _folderContext.Folders.UpdateOneAsync(filter, new ObjectUpdateDefinition <Contract.Models.Folder>(item)); return(result.IsAcknowledged ? item : null); }
private async Task InitializeFolder(Contract.Models.Folder folder, string sourceId = null, string externalId = null) { var ids = new[] { Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), Guid.NewGuid().ToString() }; var testCaseStatus = new Status { Id = ids[0], SourceId = sourceId, ExternalId = externalId, Name = "Test Case", NextStatusId = ids[1], FolderId = folder.Id }; var readyStatus = new Status { Id = ids[1], SourceId = sourceId, ExternalId = externalId, NextStatusId = ids[2], Name = "Ready for QA", FolderId = folder.Id }; var progressStatus = new Status { Id = ids[2], SourceId = sourceId, ExternalId = externalId, NextStatusId = ids[3], Name = "QA in process", FolderId = folder.Id }; var doneStatus = new Status { Id = ids[3], SourceId = sourceId, ExternalId = externalId, NextStatusId = null, Name = "Done", FolderId = folder.Id }; var statuses = new[] { testCaseStatus, readyStatus, progressStatus, doneStatus }; foreach (var status in statuses) { await _taskStatusWriteOperations.Create(status); } }
public async Task <Contract.Models.Folder> CreateFolder(CreateFolderDto createFolderDto) { ValidationHelper.ValidateAndThrow(createFolderDto); await CheckExistingUser(createFolderDto.UserId); var model = new Contract.Models.Folder { Id = Guid.NewGuid().ToString(), Name = createFolderDto.Name, UserId = createFolderDto.UserId }; await InitializeFolder(model); return(await _folderWriteOperations.Create(model)); }
public async Task <Contract.Models.Folder> CreateFolder(CreateFolderDto createFolderDto) { ValidationHelper.ValidateAndThrow(createFolderDto); await CheckExistingUser(createFolderDto.UserId); var statuseIds = new List <string>(); for (int i = 0; i < 4; i++) { statuseIds.Add(Guid.NewGuid().ToString()); } var model = new Contract.Models.Folder { Id = Guid.NewGuid().ToString(), Name = createFolderDto.Name, UserId = createFolderDto.UserId, StatusesOrder = statuseIds }; await InitializeFolder(model); return(await _folderWriteOperations.Create(model)); }
public async Task <Contract.Models.Folder> Create(Contract.Models.Folder item) { await _folderContext.Folders.InsertOneAsync(item); return(item); }