public R ToCall <R>( string methodName, object first, params object[] rest) { var parameters = MethodInvoke.NormalizeParameters(first, rest); return((R)MethodInvoke.StaticMethod <T>(methodName, parameters).Value); }
public void ToCall( string methodName, object first, params object[] rest) { var parameters = MethodInvoke.NormalizeParameters(first, rest); MethodInvoke.StaticMethod <T>(methodName, parameters); }
public void CanCallStaticMethodWithoutArgsAndWithoutResult() { // Arrange // Act var result = MethodInvoke .StaticMethod <ClassWithPrivateMethods>("StaticVoidMethodWithoutArgs", new object[0]); // Assert Assert.False(result.HasResult); Assert.Null(result.Value); }
public void CanCallStaticMethodWithoutArgsButWithResult() { // Arrange // Act var result = MethodInvoke .StaticMethod <ClassWithPrivateMethods>("StaticStringMethodWithoutArgs", new object[0]); // Assert Assert.True(result.HasResult); Assert.Equal("successStaticStringMethodWithoutArgs", result.Value); }
public void CanCallStaticMethodWithArgsAndWithResult() { // Arrange // Act var result = MethodInvoke .StaticMethod <ClassWithPrivateMethods>("StaticStringMethodWithArgs", new object[] { trackable }); // Assert Assert.True(result.HasResult); Assert.Equal("successStaticStringMethodWithArgs", result.Value); trackable.Received(1).Touch(); }
public void CanCallStaticMethodWithArgsButWithoutResult() { // Arrange // Act var result = MethodInvoke .StaticMethod <ClassWithPrivateMethods>("StaticVoidMethodWithArgs", new object[] { trackable }); // Assert Assert.False(result.HasResult); Assert.Null(result.Value); trackable.Received(1).Touch(); }
public void CallingStaticMethodWithNullForValueTypeParameterThrowsException() { // Arrange // Act var caught = Assert.Throws <InvalidOperationException>(() => MethodInvoke.StaticMethod <ClassWithPrivateMethods>( "StaticVoidMethodWhichIsNotOkayWhenArgIsNull", new object[] { null })); // Assert Assert.Equal("Didn't find a method mathing passed parameters.", caught.Message); }
public void CanCallStaticMethodWithNullArgs() { // Arrange // Act var result = (string)MethodInvoke .StaticMethod <ClassWithPrivateMethods>( "StaticStringMethodWhichIsOkayWhenArgIsNull", new object[] { null }) .Value; // Assert Assert.Equal(result, "Arg is null"); }
public R ToCall <R>( string methodName) { return((R)MethodInvoke.StaticMethod <T>(methodName, new object[0]).Value); }
public void ToCall(string methodName) { MethodInvoke.StaticMethod <T>(methodName, new object[0]); }