public void ArgumentNotNull_WhenArgumentNameIsNullOrEmpty_MustNotThrow()
{
Assert.DoesNotThrow(() => Ensure.ArgumentNotNull(new object(), null));
Assert.DoesNotThrow(() => Ensure.ArgumentNotNull(new object(), string.Empty));
var ex1 = Assert.Throws<ArgumentNullException>(() => Ensure.ArgumentNotNull((object)null, null));
ex1.ParamName.Should().BeNull();
var ex2 = Assert.Throws<ArgumentNullException>(() => Ensure.ArgumentNotNull((object)null, string.Empty));
ex2.ParamName.Should().Be(string.Empty);
}