public static void Main() { var instance = new MethodReturnParameterDataFlow(); // Validation that assigning value to the return value is verified NoRequirements(); instance.ReturnDefaultConstructor(typeof(TestType), typeof(TestType), typeof(TestType)); instance.ReturnDefaultConstructorFromUnknownType(null); instance.ReturnDefaultConstructorFromConstant(); instance.ReturnDefaultConstructorFromNull(); instance.ReturnPublicConstructorsFailure(null); instance.ReturnConstructorsFailure(null); // Validation that value comming from return value of a method is correctly propagated instance.PropagateReturnDefaultConstructor(); instance.PropagateReturnDefaultConstructorFromConstant(); }
public static void Main() { var instance = new MethodReturnParameterDataFlow(); // Validation that assigning value to the return value is verified NoRequirements(); instance.ReturnPublicParameterlessConstructor(typeof(TestType), typeof(TestType), typeof(TestType)); instance.ReturnPublicParameterlessConstructorFromUnknownType(null); instance.ReturnPublicParameterlessConstructorFromConstant(); instance.ReturnPublicParameterlessConstructorFromNull(); instance.ReturnPublicConstructorsFailure(null); instance.ReturnNonPublicConstructorsFailure(null); instance.ReturnUnknownValue(); // Validation that value comming from return value of a method is correctly propagated instance.PropagateReturnPublicParameterlessConstructor(); instance.PropagateReturnPublicParameterlessConstructorFromConstant(); instance.PropagateReturnToReturn(0); instance.ReturnWithRequirementsAlwaysThrows(); UnsupportedReturnType(); }