Skip to content

[Bug]: Mocking an interface with an async method taking many parameters doesn't build #6254

Description

@jpelcis

Description

Mocking an interface with an async method taking many parameters doesn't build.

Expected Behavior

Application to compile.

Actual Behavior

Application does not compile.

Steps to Reproduce

public interface ILongMethodSignatures
{
    Task SomeMethod(string _1, string _2, string _3, string _4, string _5,
        string _6, string _7, string _8, string _9, string _10,
        string _11, string _12, string _13, string _14, string _15,
        string _16, string _17, string _18, string _19, string _20);
}

public class Tester
{
    [Test]
    public async Task LongMethodSignature()
    {
        var mock = ILongMethodSignatures.Mock();
    }
}

TUnit Version

1.55.2

.NET Version

.NET 10

Operating System

Windows

IDE / Test Runner

dotnet CLI (dotnet test / dotnet run)

Error Output / Stack Trace

TUnit.Mocks.SourceGenerator\TUnit.Mocks.SourceGenerator.MockGenerator\ILongMethodSignatures_MockMembers.g.cs(131,79): error CS0305: Using the generic type 'Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, TResult>' requires 17 type arguments
TUnit.Mocks.SourceGenerator\TUnit.Mocks.SourceGenerator.MockGenerator\ILongMethodSignatures_MockMembers.g.cs(124,81): error CS0305: Using the generic type 'Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>' requires 15 type arguments

Additional Context

No response

IDE-Specific Issue?

  • I've confirmed this issue occurs when running via dotnet test or dotnet run, not just in my IDE

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions