![]() |
VOOZH | about |
dotnet add package AzureFunctions.TestFramework.Timer --version 0.14.0
NuGet\Install-Package AzureFunctions.TestFramework.Timer -Version 0.14.0
<PackageReference Include="AzureFunctions.TestFramework.Timer" Version="0.14.0" />
<PackageVersion Include="AzureFunctions.TestFramework.Timer" Version="0.14.0" />Directory.Packages.props
<PackageReference Include="AzureFunctions.TestFramework.Timer" />Project file
paket add AzureFunctions.TestFramework.Timer --version 0.14.0
#r "nuget: AzureFunctions.TestFramework.Timer, 0.14.0"
#:package AzureFunctions.TestFramework.Timer@0.14.0
#addin nuget:?package=AzureFunctions.TestFramework.Timer&version=0.14.0Install as a Cake Addin
#tool nuget:?package=AzureFunctions.TestFramework.Timer&version=0.14.0Install as a Cake Tool
TimerTrigger invocation support for the Azure Functions Test Framework. Provides InvokeTimerAsync(...) — an extension on IFunctionsTestHost that lets you trigger timer-triggered functions directly from integration tests without scheduling or waiting.
using AzureFunctions.TestFramework.Core;
using AzureFunctions.TestFramework.Timer;
using Microsoft.Azure.Functions.Worker;
public class TimerFunctionTests : IAsyncLifetime
{
private IFunctionsTestHost _testHost;
public async Task InitializeAsync()
{
_testHost = await new FunctionsTestHostBuilder()
.WithFunctionsAssembly(typeof(MyTimerFunction).Assembly)
.BuildAndStartAsync();
}
[Fact]
public async Task HeartbeatTimer_RunsSuccessfully()
{
// Invoke with default TimerInfo (IsPastDue = false)
var result = await _testHost.InvokeTimerAsync("HeartbeatTimer");
Assert.True(result.Success);
}
[Fact]
public async Task HeartbeatTimer_WhenPastDue_RunsSuccessfully()
{
var timerInfo = new TimerInfo { IsPastDue = true };
var result = await _testHost.InvokeTimerAsync("HeartbeatTimer", timerInfo);
Assert.True(result.Success);
}
public async Task DisposeAsync()
{
await _testHost.StopAsync();
_testHost.Dispose();
}
}
Task<FunctionInvocationResult> InvokeTimerAsync(
this IFunctionsTestHost host,
string functionName,
TimerInfo? timerInfo = null,
CancellationToken cancellationToken = default)
functionName — the name of the timer function (case-insensitive).timerInfo — optional TimerInfo passed to the function. When null, a default TimerInfo with IsPastDue = false and no schedule status is used.Use FunctionInvocationResult to inspect output bindings produced by the function:
var result = await _testHost.InvokeTimerAsync("HeartbeatTimer");
Assert.True(result.Success);
// Read a named output binding
var message = result.ReadOutputAs<string>("OutputMessage");
Assert.Equal("heartbeat", message);
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.14.0 | 646 | 5/25/2026 |
| 0.13.2 | 929 | 4/30/2026 |
| 0.12.0 | 134 | 4/20/2026 |
| 0.11.2 | 126 | 4/14/2026 |
| 0.11.1 | 111 | 4/13/2026 |
| 0.11.0 | 113 | 4/13/2026 |
| 0.10.0 | 124 | 4/11/2026 |
| 0.9.0 | 112 | 4/8/2026 |
| 0.8.0 | 103 | 4/7/2026 |
| 0.7.1 | 114 | 4/7/2026 |
| 0.7.0 | 102 | 4/7/2026 |
| 0.6.0 | 110 | 4/7/2026 |
| 0.5.0 | 117 | 4/2/2026 |
| 0.4.1 | 117 | 4/1/2026 |
| 0.4.0 | 109 | 4/1/2026 |
| 0.3.0 | 118 | 4/1/2026 |
| 0.2.1 | 113 | 3/17/2026 |
| 0.2.0 | 108 | 3/17/2026 |