AssertingBinder.Instance.SelectMethod (flags, new MethodBase [] {m0, m1}, new Type[] { typeof (int) }, null);
}
+
+ public static string Bug636939 (IFormatProvider provider, string pattern, params object [] args)
+ {
+ return string.Format (pattern, args);
+ }
+
+ [Test] // bug #636939
+ public void SelectMethodWithParamArrayAndNonEqualTypeArguments ()
+ {
+ const BindingFlags flags =
+ BindingFlags.IgnoreCase | BindingFlags.Instance |
+ BindingFlags.Static | BindingFlags.Public |
+ BindingFlags.FlattenHierarchy | BindingFlags.InvokeMethod;
+
+ Assert.AreEqual ("foobarbaz", typeof (BinderTest).InvokeMember (
+ "bug636939",
+ flags,
+ null, // binder
+ null, // target
+ new object [] { CultureInfo.CurrentCulture, "foo{0}{1}", "bar", "baz" }));
+ }
}
}