public void ToDomain_WhenCommandHasGivenNameAndDoesNotHaveMiddleName_ReturnsPersonNameWithoutMiddleName()
        {
            IPersonNameCommand sut = CreateSut(hasMiddleName: false);

            string result = ((IPersonName)sut.ToDomain()).MiddleName;

            Assert.That(result, Is.Null);
        }
        public void ToDomain_WhenCommandHasGivenNameAndDoesNotHaveMiddleName_ReturnsPersonName()
        {
            IPersonNameCommand sut = CreateSut(hasMiddleName: false);

            IName result = sut.ToDomain();

            Assert.That(result, Is.TypeOf <PersonName>());
        }
        public void ToDomain_WhenCommandHasGivenNameAndDoesNotHaveMiddleName_ReturnsPersonNameWithGivenNameFromCommand()
        {
            string             givenName = _fixture.Create <string>();
            IPersonNameCommand sut       = CreateSut(givenName: givenName, hasMiddleName: false);

            string result = ((IPersonName)sut.ToDomain()).GivenName;

            Assert.That(result, Is.EqualTo(givenName));
        }
        public void ToDomain_WhenCommandHasGivenNameAndHasMiddleName_ReturnsPersonNameWithSurnameFromCommand()
        {
            string             surname = _fixture.Create <string>();
            IPersonNameCommand sut     = CreateSut(surname: surname);

            string result = ((IPersonName)sut.ToDomain()).Surname;

            Assert.That(result, Is.EqualTo(surname));
        }