Beispiel #1
0
        public void ConvertFromJson_NullParameters_ReturnsZeroResults()
        {
            var convert = new PersonConverter();
            var people  = convert.ConvertFromJson(null, null);

            Assert.AreEqual(0, people.Count());
        }
Beispiel #2
0
        public void ConvertFromJson_EmptyString_ReturnsZeroResults()
        {
            var convert = new PersonConverter();
            var people  = convert.ConvertFromJson("", "");

            Assert.AreEqual(0, people.Count());
        }
Beispiel #3
0
        public void ConvertFromJson_HourlyAndSalariedEmployees_GetMerged()
        {
            var convert = new PersonConverter();
            var people  = convert.ConvertFromJson("[ { Name: 'Sam', Salary: 15 } ]", "[ { Name: 'Bob', RatePerHour: 5.50 } ]").ToList();

            Assert.AreEqual(2, people.Count());
            Assert.AreEqual(1, people.Count(i => i is SalariedEmployee));
            Assert.AreEqual(1, people.Count(i => i is HourlyEmployee));
        }
Beispiel #4
0
        public void ConvertFromJson_HourlyEmployee_ReturnsStronglyTypedHourlyEmployee()
        {
            var convert = new PersonConverter();
            var people  = convert.ConvertFromJson(null, "[ { Name: 'Bob', RatePerHour: 5.50 } ]").ToList();

            Assert.AreEqual(1, people.Count());
            var bob = people[0] as HourlyEmployee;

            Assert.IsNotNull(bob, "Expected a SalariedEmployee, but got a Person");
            Assert.AreEqual("Bob", bob.Name);
            Assert.AreEqual(5.5M, bob.RatePerHour);
        }
Beispiel #5
0
        public void ConvertFromJson_SalariedEmployee_ReturnsStronglyTypedEmployee()
        {
            var convert = new PersonConverter();
            var people  = convert.ConvertFromJson("[ { Name: 'Bob', Salary: 10 } ]", null).ToList();

            Assert.AreEqual(1, people.Count());
            var bob = people[0] as SalariedEmployee;

            Assert.IsNotNull(bob, "Expected a SalariedEmployee, but got some other type (Person?)");
            Assert.AreEqual("Bob", bob.Name);
            Assert.AreEqual(10, bob.Salary);
        }