Describe the bug
Static members in interfaces (not abstract) confuses Rocks. I think it thinks it needs to include the members, and they need shims because they have implementations, but they shouldn't be included at all.
To Reproduce
var code =
"""
using Rocks;
public interface IRequest
{
public static string ToString(IRequest request) => "";
public static string ToMethodCallString(IRequest request) => "";
void AddInvokeMethodOptions(int options);
}
public static class Test
{
public static void Go() => Rock.Create<IRequest>();
}
""";
Expected behavior
No errors, and AddInvokeMethodOptions() is available to mock.
Additional context
This was found on Orleans.Runtime.IAsyncEnumerableRequest<>
Describe the bug
Static members in interfaces (not abstract) confuses Rocks. I think it thinks it needs to include the members, and they need shims because they have implementations, but they shouldn't be included at all.
To Reproduce
Expected behavior
No errors, and
AddInvokeMethodOptions()is available to mock.Additional context
This was found on
Orleans.Runtime.IAsyncEnumerableRequest<>