Null
ShouldBeNull
and ShouldNotBeNull
allow you to check whether a value is null.
ShouldNotBeNull
returns the non-null value if it succeeds so that further assertions can be chained. When used with a reference type, the returned value is the same reference annotated as non-null. Equivalently, when used on a System.Nullable<T>
expression, the returned value is the unwrapped T
value.
ShouldBeNull
var myRef = "Hello World";
myRef.ShouldBeNull();
Exception
myRef
should be null but was
"Hello World"
ShouldBeNull (nullable value type)
int? nullableValue = 42;
nullableValue.ShouldBeNull();
Exception
nullableValue
should be null but was
42
ShouldNotBeNull
string? myRef = null;
myRef.ShouldNotBeNull();
Exception
myRef
should not be null but was
ShouldNotBeNull (nullable value type)
int? myRef = null;
myRef.ShouldNotBeNull();
Exception
myRef
should not be null but was
ShouldNotBeNull with chaining
var myRef = (string?)"1234";
myRef.ShouldNotBeNull().Length.ShouldBe(5);
Exception
myRef.ShouldNotBeNull().Length
should be
5
but was
4
ShouldNotBeNull with chaining (nullable value type)
SomeStruct? nullableValue = new SomeStruct { IntProperty = 41 };
nullableValue.ShouldNotBeNull().IntProperty.ShouldBe(42);
Exception
nullableValue.ShouldNotBeNull().IntProperty
should be
42
but was
41
Last updated