コード例 #1
0
        // used to quickly update an agile item directly from the board, usually a status change
        public async Task <bool> UpdateAgileItem(BoardTaskVm updatedTask)
        {
            try
            {
                var item = await _context.AgileItems.Where(a => a.Id == updatedTask.Id).FirstOrDefaultAsync();

                if (item != null)
                {
                    item.Title       = updatedTask.Title;
                    item.Description = updatedTask.Description;
                    item.Order       = updatedTask.Order;
                    item.Priority    = updatedTask.Priority;
                    item.Status      = updatedTask.Status;

                    if (updatedTask.BlockedReason != null)
                    {
                        item.BlockedReason = updatedTask.BlockedReason;
                    }

                    await _context.SaveChangesAsync();

                    return(true);
                }
            }
            catch (Exception e)
            {
                _logger.LogError("Exception when updating agile item, Exception:" + e + "Stack trace:" + e.StackTrace + "updated task:" + updatedTask);
            }
            return(false);
        }
コード例 #2
0
        public async Task <IActionResult> UpdateAgileItem([FromBody] BoardTaskVm updatedTask)
        {
            var success = await _agileItemRepository.UpdateAgileItem(updatedTask);

            if (success)
            {
                return(Ok(success));
            }
            return(new StatusCodeResult(500));
        }
コード例 #3
0
        public async Task UpdateAgileItem_Invalid_Failure()
        {
            // Arrange
            var updatedItem = new BoardTaskVm()
            {
                Id           = Guid.NewGuid(),
                AssigneeId   = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
                AssigneeName = "Oli",
                Description  = "Updated",
                Order        = 3,
                Priority     = Models.Types.Priority.Low,
                Status       = Models.Types.Status.Complete,
                Title        = "Updated title"
            };

            // Act
            var success = await _agileItemRepository.UpdateAgileItem(updatedItem);

            // Assert
            Assert.IsNotNull(success);
            Assert.IsFalse(success);
        }
コード例 #4
0
        public async Task UpdateAgileItem_Valid_Success()
        {
            // Arrange
            var updatedItem = new BoardTaskVm()
            {
                Id           = Guid.Parse("5eb09b45-9c70-4465-b62d-535e28b16aed"),
                AssigneeId   = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
                AssigneeName = "Oli",
                Description  = "Updated",
                Order        = 3,
                Priority     = Models.Types.Priority.Low,
                Status       = Models.Types.Status.Complete,
                Title        = "Updated title"
            };

            // Act
            var success = await _agileItemRepository.UpdateAgileItem(updatedItem);

            // Assert
            Assert.IsNotNull(success);
            Assert.IsTrue(success);
        }
コード例 #5
0
 public void Setup()
 {
     _mockAgileItemsRepository = new Mock <IAgileItemRepository>();
     _agileItemsController     = new AgileItemsController(_mockAgileItemsRepository.Object);
     _stubShortVm = new AgileItemShortVm
     {
         Id    = Guid.Parse("08a60a7f-6d09-438c-97f7-cef7426b1b83"),
         Order = 1,
         Title = "Stub Title"
     };
     _stubCreateAgileItemDto = new CreateAgileItemDto
     {
         AssigneeId    = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         AssigneeName  = "Oli",
         Board         = Guid.Parse("aada6f2a-8854-4a5e-a907-2244f43408a1"),
         CreatedBy     = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         Description   = "Stub create",
         DueBy         = DateTime.Now.AddHours(1),
         EstimatedTime = 1,
         ItemType      = Models.Types.AgileItemType.Story,
         Order         = null,
         ParentId      = Guid.Parse("5eb09b45-9c70-4465-b62d-535e28b16aed"),
         Priority      = Models.Types.Priority.High,
         StoryPoints   = 3,
         Title         = "A stub creation of a story"
     };
     _stubUpdateItemVm = new BoardTaskVm
     {
         Id           = Guid.Parse("5eb09b45-9c70-4465-b62d-535e28b16aed"),
         AssigneeId   = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         AssigneeName = "Oli",
         Description  = "Updated",
         Order        = 3,
         Priority     = Models.Types.Priority.Low,
         Status       = Models.Types.Status.Complete,
         Title        = "Updated title"
     };
     _stubFullAgileItemVm = new AgileItemVm
     {
         Id            = Guid.Parse("5eb09b45-9c70-4465-b62d-535e28b16aee"),
         AssigneeId    = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         AssigneeName  = "Oli",
         CreatedBy     = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         Description   = "Stub Story",
         DueBy         = DateTime.Now.AddHours(1),
         EstimatedTime = 1,
         AgileItemType = Models.Types.AgileItemType.Story,
         Order         = null,
         Priority      = Models.Types.Priority.High,
         Title         = "A stub creation of a story",
         CreatedOn     = DateTime.Now,
         IsActive      = true,
         IsComplete    = false,
         Status        = Models.Types.Status.InProgress,
         ParentId      = Guid.Parse("5eb09b45-9c70-4465-b62d-535e28b16aed"),
         BoardId       = Guid.Parse("aada6f2a-8854-4a5e-a907-2244f43408a1"),
     };
     _stubOverviewVm = new AgileItemOverviewVm
     {
         AssigneeName = "Oli",
         Description  = "Stub Story",
         Order        = null,
         Priority     = Models.Types.Priority.High,
         Title        = "A stub creation of a story",
         IsComplete   = false,
         Status       = Models.Types.Status.InProgress,
     };
     _stubShortVmList = new List <AgileItemShortVm> {
         _stubShortVm
     };
     _stubOverviewVmList = new List <AgileItemOverviewVm> {
         _stubOverviewVm
     };
 }