Inheritance: IInterrogator
        static InterrogatorFactory()
        {
            Interrogators = new Dictionary<Type, IInterrogator>
            {
                {typeof (string), new StringInterrogator()},
                {typeof (DataTable), new DataTableInterrogator()}
            };

            DefaultInterrogator = new PocoInterrogator();
        }
        public void CreateMapper_Expected_PocoMapper()
        {
            PocoTestData pocoTestData = Given();
            PocoInterrogator pocoInterrogator = new PocoInterrogator();

            IMapper mapper = pocoInterrogator.CreateMapper(pocoTestData);

            Type expected = typeof(PocoMapper);
            Type actual = mapper.GetType();

            Assert.AreEqual(expected, actual);
        }
        public void CreateNavigator_Expected_PocoNavigator()
        {
            PocoTestData pocoTestData = Given();
            PocoInterrogator pocoInterrogator = new PocoInterrogator();

            INavigator navigator = pocoInterrogator.CreateNavigator(pocoTestData, typeof(PocoPath));

            Type expected = typeof(PocoNavigator);
            Type actual = navigator.GetType();

            Assert.AreEqual(expected, actual);
        }