Ejemplo n.º 1
0
        public void Should_return_the_appropriate_generic_type_with_a_generic_base_class()
        {
            IEnumerable <Type> types = InterfaceExtensions.GetClosingArguments(typeof(NonGenericSubClass), typeof(IGeneric <>));

            Assert.AreEqual(1, types.Count());
            Assert.AreEqual(typeof(int), types.First());
        }
Ejemplo n.º 2
0
        public void Should_return_the_generic_type_from_a_class()
        {
            IEnumerable <Type> types = InterfaceExtensions.GetClosingArguments(typeof(NonGenericSubClass), typeof(GenericBaseClass <>));

            Assert.AreEqual(1, types.Count());
            Assert.AreEqual(typeof(int), types.First());
        }
Ejemplo n.º 3
0
        public void Should_not_have_closing_arguments_for_a_class_that_isnt_closed()
        {
            IEnumerable <Type> types = InterfaceExtensions.GetClosingArguments(typeof(SuperGenericBaseClass <>), typeof(IGeneric <>));

            Assert.AreEqual(0, types.Count());
        }