private void ValidateAdvancedAge(ExamplePerson person)
 {
     if (person.BirthDate < (DateTime.Today.AddYears(-ExamplesConstants.WARNING_MAX_AGE)))
     {
         throw new BusinessException(_examplesMessages.GetIdadeAvancada());
     }
 }
Exemplo n.º 2
0
        public void CreateFromNameAndEmail_GivenNullName_ThrowsException()
        {
            var ex = Should.Throw <ArgumentNullException>(
                () => ExamplePerson.Create(null, _email));

            ex.ParamName.ShouldBe("name");
        }
 private void ValidateMaxAge(ExamplePerson person)
 {
     if (person.BirthDate < (DateTime.Today.AddYears(-ExamplesConstants.MAX_AGE)))
     {
         throw new BusinessException(_examplesMessages.GetIdadeNaoPermitida());
     }
 }
Exemplo n.º 4
0
        public void CreateFromNameAndEmail_GivenNullEmailAddress_ThrowsException()
        {
            var ex = Should.Throw <ArgumentNullException>(
                () => ExamplePerson.Create(_name, null));

            ex.ParamName.ShouldBe("emailAddress");
        }
Exemplo n.º 5
0
        public void CreateFromNameAndEmail_GivenInvalidNonEmptyEmail_ReturnsNotifications()
        {
            var result = ExamplePerson.Create(_name, "bugbunnyattest.com");

            result.ShouldSatisfyAllConditions(
                () => result.Notifications["EmailAddress"].ShouldContain(
                    n => n.Message.Contains("A valid email address is required.")));
        }
Exemplo n.º 6
0
        public void CreateFromNameAndEmail_GivenValidData_ReturnsAggregate()
        {
            var result = ExamplePerson.Create(_name, _email);

            result.ShouldSatisfyAllConditions(
                () => result.NewAggregate.ShouldNotBeNull(),
                () => result.NewAggregate.ShouldBeOfType <ExamplePerson>());
        }
        public PersonControllerTests()
        {
            _log = new Mock <ILogger <PersonController> >();

            _personController = new PersonController(TesteBase.GetInstance().serviceProvider.GetService <IExamplePersonServices>(), _log.Object);

            _examplePerson = new ExamplePerson();
        }
Exemplo n.º 8
0
 protected override async Task <CommandResult> HandleCore(CreateExamplePersonCommand request, CancellationToken cancellationToken)
 {
     return
         ((await
           ExamplePerson
           .Create(request.Name, request.EmailAddress)
           .AddIfSucceeded(_dbContext))
          .ToCommandResult());
 }
Exemplo n.º 9
0
        public void CreateFromNameAndEmail_GivenEmptyData_ReturnsNotifications()
        {
            var result = ExamplePerson.Create("", "");

            result.ShouldSatisfyAllConditions(
                () => result.Notifications["Name"].ShouldContain(
                    n => n.Message.Contains("A name is required.")),
                () => result.Notifications["EmailAddress"].ShouldContain(
                    n => n.Message.Contains("A valid email address is required.")));
        }
        public ExamplePerson UpdatePerson(ExamplePerson person)
        {
            ValidateMaxAge(person);

            _personRepository.Update(person);

            ValidateAdvancedAge(person);

            return(person);
        }
Exemplo n.º 11
0
        public void CreateFromNameAndEmail_adds_ExamplePersonCreated_event()
        {
            var aggregate = ExamplePerson.Create("Elmer Fudd", "*****@*****.**").NewAggregate;

            var createdEvent = aggregate.Events.OfType <ExamplePersonCreated>().SingleOrDefault();

            createdEvent.ShouldSatisfyAllConditions(
                () => createdEvent.ShouldNotBeNull(),
                () => createdEvent.Name.ShouldBe("Elmer Fudd"));
        }
Exemplo n.º 12
0
        public void Constructor_sets_properties()
        {
            var person = ExamplePerson.Create("bob", "*****@*****.**").NewAggregate;

            var @event = new ExamplePersonCreated(person.Id, person.Name, person.EmailAddress);

            @event.ShouldSatisfyAllConditions(
                () => @event.EventId.ShouldNotBe(Guid.Empty),
                () => @event.Name.ShouldBe(person.Name),
                () => @event.EmailAddress.ShouldBe(person.EmailAddress));
        }
Exemplo n.º 13
0
        public ICollection <ExamplePerson> GetAll()
        {
            var a = new ExamplePerson()
            {
                Id        = 1,
                Name      = "Lucas Higor",
                Cpf       = "425680428",
                BirthDate = DateTime.Today
            };

            var b = new List <ExamplePerson>();

            b.Add(a);

            return(b);
        }
Exemplo n.º 14
0
        public void ValidateMaxAge_ParticipanteForaDaIdade_test()
        {
            //Setup
            _personRepository = new Mock <IExamplePersonRepository>();

            var app = new ExamplePersonBusiness(_personRepository.Object, _examplesMessages);

            var person = new ExamplePerson()
            {
                Name      = "Usuario 1",
                BirthDate = DateTime.Today.AddYears(-(ExamplesConstants.MAX_AGE + 1))
            };

            //Fact
            BusinessException ex = Assert.Throws <BusinessException>(() => app.SavePerson(person));

            //Assert
            Assert.Equal(_examplesMessages.GetIdadeNaoPermitida(), ex.Message);
        }
Exemplo n.º 15
0
        public void ValidateAvancedAge_ParticipanteDentroDaIdadeWarningDate_test()
        {
            //Setup
            _personRepository = new Mock <IExamplePersonRepository>();

            var app = new ExamplePersonBusiness(_personRepository.Object, _examplesMessages);

            var person = new ExamplePerson()
            {
                Id        = 1,
                Name      = "Usuario 1",
                BirthDate = DateTime.Today.AddYears(-(ExamplesConstants.WARNING_MAX_AGE + 1))
            };

            _personRepository.Setup(x => x.Create(It.IsAny <ExamplePerson>())).Returns(person);

            //Fact
            BusinessException ex = Assert.Throws <BusinessException>(() => app.SavePerson(person));

            //Assert
            Assert.Equal(_examplesMessages.GetIdadeAvancada(), ex.Message);
        }
Exemplo n.º 16
0
        public IActionResult Put([FromBody] ExamplePerson value)
        {
            var obj = _examplePersonServices.UpdatePerson(value);

            return(Ok(obj));
        }
 public void Delete(ExamplePerson person)
 {
     _personRepository.DeleteByCpf(person.Cpf);
 }
 public ExamplePerson SavePerson(ExamplePerson person)
 {
     _personExampleValidator.Validar(person);
     return(_examplePersonBusiness.SavePerson(person));
 }
Exemplo n.º 19
0
        public void CreateFromNameAndEmail_GivenValidEmail_SetsEmail()
        {
            var examplePerson = ExamplePerson.Create(_name, _email).NewAggregate;

            examplePerson.EmailAddress.ShouldBe(_email);
        }
Exemplo n.º 20
0
        public void CreateFromNameAndEmail_GivenValidName_SetsNameProperty()
        {
            var examplePerson = ExamplePerson.Create(_name, _email).NewAggregate;

            examplePerson.Name.ShouldBe(_name);
        }
Exemplo n.º 21
0
 public ExamplePerson Update(ExamplePerson person)
 {
     return(person);
 }
        public ExamplePerson UpdatePerson(ExamplePerson person)
        {
            _personRepository.Update(person);

            return(person);
        }
 public ExamplePerson SavePerson(ExamplePerson person)
 {
     return(_examplePersonBusiness.SavePerson(person));
 }
 public void Delete(ExamplePerson person)
 {
     _examplePersonBusiness.Delete(person);
 }
Exemplo n.º 25
0
 public ExamplePerson Create(ExamplePerson examplePerson)
 {
     examplePerson.Id = 1;
     return(examplePerson);
 }
 public ExamplePerson UpdatePerson(ExamplePerson person)
 {
     return(_examplePersonBusiness.UpdatePerson(person));
 }
        public ExamplePerson SavePerson(ExamplePerson person)
        {
            _personRepository.Create(person);

            return(person);
        }