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);
        }
Example #2
0
        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);
            }
        }
Example #3
0
        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);
        }