public void SumOfChildrenAgesEqualsParentAge_JohnAndJulie()
        {
            // assemble
            PARENT   = Convert.ToDateTime("12/7/1942");
            CHILDREN = new List <DateTime>()
            {
                Convert.ToDateTime("7/5/1963"),
                Convert.ToDateTime("9/3/1964"),
            };
            EXPECTED = Convert.ToDateTime("09/03/1985");

            // act
            DateTime ACTUAL = SumEqualsParentAge.GetTargetDate(PARENT, CHILDREN);

            // assert
            Assert.AreEqual(ACTUAL, EXPECTED);
        }
        public void SumOfChildrenAgesEqualsParentAge_Returns2014()
        {
            // assemble
            PARENT   = Convert.ToDateTime("7/27/1972");
            CHILDREN = new List <DateTime>()
            {
                Convert.ToDateTime("2/24/1997"),
                Convert.ToDateTime("11/28/2006")
            };
            EXPECTED = Convert.ToDateTime("11/28/2031");

            // act
            DateTime ACTUAL = SumEqualsParentAge.GetTargetDate(PARENT, CHILDREN);

            // assert
            Assert.AreEqual(ACTUAL, EXPECTED);
        }
        public void SumOfChildrenAgesEqualsParentAge_SameMonthDay()
        {
            // assemble
            PARENT   = Convert.ToDateTime("1/1/1971");
            CHILDREN = new List <DateTime>()
            {
                Convert.ToDateTime("1/1/1993"),
                Convert.ToDateTime("1/1/1997")
            };
            EXPECTED = Convert.ToDateTime("1/1/2019");

            // act
            DateTime ACTUAL = SumEqualsParentAge.GetTargetDate(PARENT, CHILDREN);

            // assert
            Assert.AreEqual(ACTUAL, EXPECTED);
        }
        public void SumOfChildrenAgesEqualsParentAge_Returns2031()
        {
            // assemble
            PARENT   = Convert.ToDateTime("09/04/1967");
            CHILDREN = new List <DateTime>()
            {
                Convert.ToDateTime("07/22/1989"),
                Convert.ToDateTime("01/19/1991")
            };
            EXPECTED = Convert.ToDateTime("01/19/2013");

            // act
            DateTime ACTUAL = SumEqualsParentAge.GetTargetDate(PARENT, CHILDREN);

            // assert
            Assert.AreEqual(ACTUAL, EXPECTED);
        }
        public void SumOfChildrenAgesEqualsParentAge_MoreThan2Children()
        {
            // assemble
            PARENT   = Convert.ToDateTime("12/7/1942");
            CHILDREN = new List <DateTime>()
            {
                Convert.ToDateTime("7/5/1963"),
                Convert.ToDateTime("9/3/1964"),
                Convert.ToDateTime("2/1/1966"),
                Convert.ToDateTime("9/4/1967"),
                Convert.ToDateTime("10/26/1968")
            };
            EXPECTED = Convert.ToDateTime("02/01/1972");

            // act
            DateTime ACTUAL = SumEqualsParentAge.GetTargetDate(PARENT, CHILDREN);

            // assert
            Assert.AreEqual(ACTUAL, EXPECTED);
        }