Skip to content

Commit 10d8cbf

Browse files
Use tagged root args in lightweight max-arguments test
1 parent 414bc81 commit 10d8cbf

1 file changed

Lines changed: 36 additions & 7 deletions

File tree

tests/Pure.DI.IntegrationTests/LightweightRootsTests.cs

Lines changed: 36 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1208,18 +1208,47 @@ public async Task ShouldSupportLightweightRootWithMaximumFuncArguments()
12081208
namespace Sample;
12091209
12101210
interface IService { int Sum { get; } }
1211-
class Service(Func<int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int> sum) : IService
1212-
{
1213-
public int Sum { get; } = sum(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
1211+
class Service(
1212+
[Tag("a1")] int a1,
1213+
[Tag("a2")] int a2,
1214+
[Tag("a3")] int a3,
1215+
[Tag("a4")] int a4,
1216+
[Tag("a5")] int a5,
1217+
[Tag("a6")] int a6,
1218+
[Tag("a7")] int a7,
1219+
[Tag("a8")] int a8,
1220+
[Tag("a9")] int a9,
1221+
[Tag("a10")] int a10,
1222+
[Tag("a11")] int a11,
1223+
[Tag("a12")] int a12,
1224+
[Tag("a13")] int a13,
1225+
[Tag("a14")] int a14,
1226+
[Tag("a15")] int a15)
1227+
: IService
1228+
{
1229+
public int Sum { get; } =
1230+
a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + a10 + a11 + a12 + a13 + a14 + a15;
12141231
}
12151232
12161233
partial class Composition
12171234
{
12181235
void Setup() => DI.Setup(nameof(Composition))
12191236
.Hint(Hint.Resolve, "Off")
1220-
.Bind<Func<int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int>>()
1221-
.To(_ => (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) =>
1222-
a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + a10 + a11 + a12 + a13 + a14 + a15)
1237+
.RootArg<int>("a1", "a1")
1238+
.RootArg<int>("a2", "a2")
1239+
.RootArg<int>("a3", "a3")
1240+
.RootArg<int>("a4", "a4")
1241+
.RootArg<int>("a5", "a5")
1242+
.RootArg<int>("a6", "a6")
1243+
.RootArg<int>("a7", "a7")
1244+
.RootArg<int>("a8", "a8")
1245+
.RootArg<int>("a9", "a9")
1246+
.RootArg<int>("a10", "a10")
1247+
.RootArg<int>("a11", "a11")
1248+
.RootArg<int>("a12", "a12")
1249+
.RootArg<int>("a13", "a13")
1250+
.RootArg<int>("a14", "a14")
1251+
.RootArg<int>("a15", "a15")
12231252
.Bind<IService>().To<Service>()
12241253
.Root<IService>("Create", kind: RootKinds.Light);
12251254
}
@@ -1229,7 +1258,7 @@ class Program
12291258
static void Main()
12301259
{
12311260
var composition = new Composition();
1232-
Console.WriteLine(composition.Create.Sum);
1261+
Console.WriteLine(composition.Create(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15).Sum);
12331262
}
12341263
}
12351264
""".RunAsync(new Options(LanguageVersion.Preview));

0 commit comments

Comments
 (0)