public void IsAssignableFromType()
        {
            Assert.ThrowsExact <ArgumentNullException>(() => Assert.IsAssignableFromType <string>(null));
            Assert.ThrowsExact <AssertionException>(() => Assert.IsAssignableFromType <int>("hello"));
            Assert.ThrowsExact <AssertionException>(() => Assert.IsAssignableFromType <int>(1L));
            Assert.DoesNotThrow(() => Assert.IsAssignableFromType <int>(new int?(1)));
            Assert.DoesNotThrow(() => Assert.IsAssignableFromType <int>(1));

            Assert.ThrowsExact <ArgumentNullException>(() => Assert.IsAssignableFromType(null, typeof(string)));
            Assert.ThrowsExact <ArgumentNullException>(() => Assert.IsAssignableFromType("hello", null));
            Assert.ThrowsExact <AssertionException>(() => Assert.IsAssignableFromType("hello", typeof(int)));
            Assert.ThrowsExact <AssertionException>(() => Assert.IsAssignableFromType(1L, typeof(int)));
            Assert.DoesNotThrow(() => Assert.IsAssignableFromType(new int?(1), typeof(int)));
            Assert.DoesNotThrow(() => Assert.IsAssignableFromType(1, typeof(int)));
        }