public void TestMethod_Category_4()
        {
            IPerson person     = new Person("Ryan", "Chen", 120000, 10, DateTime.Now, DateTime.Now);
            var     allPersons = new List <IPerson>()
            {
                person
            };

            var payCalc = new PayCalc_2017();

            payCalc.ProcessAllPersons(allPersons);

            var person_result = allPersons.FirstOrDefault(a => a.FirstName == person.FirstName && a.LastName == person.LastName);

            Assert.AreEqual(person_result.Salary, 120000);
            Assert.AreEqual(person_result.GrossIncome, 10000);
            Assert.AreEqual(person_result.IncomeTax, 2696);
            Assert.AreEqual(person_result.NetIncome, 7304);
            Assert.AreEqual(person_result.Super, 1000);
        }
        public void TestMethod_Category_3()
        {
            IPerson person     = new Person("David", "Rudd", 60050, 9, DateTime.Now, DateTime.Now);
            var     allPersons = new List <IPerson>()
            {
                person
            };

            var payCalc = new PayCalc_2017();

            payCalc.ProcessAllPersons(allPersons);

            var person_result = allPersons.FirstOrDefault(a => a.FirstName == person.FirstName && a.LastName == person.LastName);

            Assert.AreEqual(person_result.Salary, 60050);
            Assert.AreEqual(person_result.GrossIncome, 5004);
            Assert.AreEqual(person_result.IncomeTax, 922);
            Assert.AreEqual(person_result.NetIncome, 4082);
            Assert.AreEqual(person_result.Super, 450);
        }