public void ArgumentAssignableFrom_WhenArgumentNotAssignable_MustThrow()
{
var ex1 = Assert.Throws<ArgumentException>(() => Ensure.ArgumentAssignableFrom(typeof(IInterface), new NotImplementedClass(), "argument"));
ex1.ParamName.Should().Be("argument");
var ex2 = Assert.Throws<ArgumentException>(() => Ensure.ArgumentAssignableFrom(typeof(ImplementedClass), new ImplementedInheritedClass(), "argument"));
ex2.ParamName.Should().Be("argument");
}