Example #1
0
        public void IsValid_ShouldBeFalse_WhenIdIsNull()
        {
            var command = new UpdatePlannerCommand
            {
                Title = "Not Null < 200 byte",
            };

            var validator = new UpdatePlannerCommandValidator();

            var result = validator.Validate(command);

            result.IsValid.ShouldBe(false);
        }
Example #2
0
        public void IsValid_ShouldBeTrue_WhenTitleLessThan200byte()
        {
            var command = new UpdatePlannerCommand
            {
                Title = "Not Null < 200 byte",
                Id    = validPlannerId,
            };

            var validator = new UpdatePlannerCommandValidator();

            var result = validator.Validate(command);

            result.IsValid.ShouldBe(true);
        }
Example #3
0
        public void IsValid_ShouldBeFalse_WhenTitleIsGreaterThan200Byte()
        {
            var command = new UpdatePlannerCommand
            {
                Title = "12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890" +
                        "1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890" +
                        "1",
                Id = validPlannerId,
            };

            var validator = new UpdatePlannerCommandValidator();

            var result = validator.Validate(command);

            result.IsValid.ShouldBe(false);
        }
        public async Task Handle_GivenInvalidId_ShouldRaiseNotFound()
        {
            var client = await _factory.GetAuthenticatedClientAsync();

            var command = new UpdatePlannerCommand
            {
                Id         = Guid.NewGuid(),
                Title      = "Updated",
                Purpose    = "Updated",
                Milestones = new List <MilestoneModel>
                {
                    new MilestoneModel()
                    {
                        Title       = "Milestone 1",
                        Description = "Milestone 1 Description",
                        Date        = DateTime.UtcNow,
                        Tasks       = new List <TaskItemModel>
                        {
                            new TaskItemModel()
                            {
                                Id = new Guid("197d0438-e04b-453d-b5de-eca05960c6ae")
                            },
                            new TaskItemModel()
                            {
                                Id = new Guid("de14a885-71d4-4da0-bb17-048d74d33ada")
                            }
                        }
                    }
                },
                Tags = new List <TagModel>
                {
                    new TagModel()
                    {
                        TagName = "Tag 4"
                    },
                    new TagModel()
                    {
                        TagName = "Tag 5"
                    }
                }
            };

            var content  = IntegrationTestHelper.GetRequestContent(command);
            var response = await client.PutAsync($"/api/Planner", content);

            response.StatusCode.ShouldBe(HttpStatusCode.NotFound);
        }
        public async Task GivenValidUpdateTaskItemCommand_ReturnsSuccessCode()
        {
            var client = await _factory.GetAuthenticatedClientAsync();

            var command = new UpdatePlannerCommand
            {
                Id         = Guid.Parse("CBB85A08-ED54-4924-9135-E1F723A2BA6B"),
                Title      = "Updated",
                Purpose    = "Updated",
                Milestones = new List <MilestoneModel>
                {
                    new MilestoneModel()
                    {
                        Title       = "Milestone 1",
                        Description = "Milestone 1 Description",
                        Date        = DateTime.UtcNow,
                        Tasks       = new List <TaskItemModel>
                        {
                            new TaskItemModel()
                            {
                                Id = new Guid("197d0438-e04b-453d-b5de-eca05960c6ae")
                            },
                            new TaskItemModel()
                            {
                                Id = new Guid("de14a885-71d4-4da0-bb17-048d74d33ada")
                            }
                        }
                    }
                },
                Tags = new List <TagModel>
                {
                    new TagModel()
                    {
                        TagName = "Tag 4"
                    },
                    new TagModel()
                    {
                        TagName = "Tag 5"
                    }
                }
            };

            var content  = IntegrationTestHelper.GetRequestContent(command);
            var response = await client.PutAsync($"/api/Planner", content);

            response.EnsureSuccessStatusCode();
        }
        public async Task <ActionResult> UpdatePlanner(UpdatePlannerCommand command)
        {
            await Mediator.Send(command);

            return(NoContent());
        }