Add strongly typed procedure execution helpers

This commit is contained in:
2026-02-27 16:43:21 +01:00
parent f8353e7488
commit 7c084490d8
6 changed files with 351 additions and 4 deletions

View File

@@ -170,6 +170,39 @@ namespace DynamORM.Tests.Procedure
});
}
[Test]
public void TestExecTypedOverloadRejectsWrongArgumentsType()
{
var procedures = new DynamicProcedureInvoker(null);
Assert.Throws<System.InvalidOperationException>(() =>
{
var ignored = procedures.Exec<ExecProcedureDescriptorWithExplicitResult, ProcedureAttributedResult>(new ProcedureParameterObject());
});
}
[Test]
public void TestTypedProcedureHandleRejectsWrongArgumentsType()
{
var procedures = new DynamicProcedureInvoker(null);
Assert.Throws<System.InvalidOperationException>(() =>
{
var ignored = procedures.Typed<ExecProcedureDescriptorWithExplicitResult, ProcedureAttributedResult>()
.Exec(new ProcedureParameterObject());
});
}
[Test]
public void TestDynamicDatabaseTypedProcedureHandleRejectsWrongArgumentsType()
{
Assert.Throws<System.InvalidOperationException>(() =>
{
var ignored = Database.TypedProcedure<ExecProcedureDescriptorWithExplicitResult, ProcedureAttributedResult>()
.Exec(new ProcedureParameterObject());
});
}
[Test]
public void TestDeclaredResultPayloadBindingMapsMainAndOutValues()
{