public void ValidCanCast(Type duckType, string obscureObjectName) { var obscureObject = ObscureObject.GetObject(obscureObjectName); using var scope = new AssertionScope(); obscureObject.DuckIs(duckType).Should().BeTrue(); var valid = obscureObject.DuckCast(duckType); }
public static IEnumerable <object[]> Data() { return(new[] { new object[] { ObscureObject.GetFieldPublicObject() }, new object[] { ObscureObject.GetFieldInternalObject() }, new object[] { ObscureObject.GetFieldPrivateObject() }, }); }
public void WrongReturnTypesThrow(Type duckType, string obscureObjectName) { var obscureObject = ObscureObject.GetObject(obscureObjectName); using var scope = new AssertionScope(); obscureObject.DuckIs(duckType).Should().BeFalse(); Action cast = () => obscureObject.DuckCast(duckType); cast.Should().Throw <TargetInvocationException>(); }