![]() |
VOOZH | about |
dotnet add package Rig.TUnit.Caching.Fusion --version 0.1.0-beta.2
NuGet\Install-Package Rig.TUnit.Caching.Fusion -Version 0.1.0-beta.2
<PackageReference Include="Rig.TUnit.Caching.Fusion" Version="0.1.0-beta.2" />
<PackageVersion Include="Rig.TUnit.Caching.Fusion" Version="0.1.0-beta.2" />Directory.Packages.props
<PackageReference Include="Rig.TUnit.Caching.Fusion" />Project file
paket add Rig.TUnit.Caching.Fusion --version 0.1.0-beta.2
#r "nuget: Rig.TUnit.Caching.Fusion, 0.1.0-beta.2"
#:package Rig.TUnit.Caching.Fusion@0.1.0-beta.2
#addin nuget:?package=Rig.TUnit.Caching.Fusion&version=0.1.0-beta.2&prereleaseInstall as a Cake Addin
#tool nuget:?package=Rig.TUnit.Caching.Fusion&version=0.1.0-beta.2&prereleaseInstall as a Cake Tool
FusionCache provider — L1 in-memory + optional L2 distributed + backplane, with fail-safe, eager refresh, and tag invalidation.
The Rig.TUnit adapter for FusionCache.
FusionCacheFixture configures an IFusionCache with production-shape
defaults (fail-safe enabled, eager-refresh at 80 % TTL, 60 s default
duration) and exposes FailSafeHelper + EagerRefreshHelper — pure
decision-logic predicates that tests use to assert the cache should
apply fail-safe or trigger an eager refresh, without racing the
scheduler.
No container required — FusionCache is in-process. For the L2 distributed
tier, pair with Rig.TUnit.Caching.Redis.
IMemoryCache — use Rig.TUnit.Caching.Memory.ZiggyCreatures.FusionCache 2.x (transitive)using Rig.TUnit.Caching.Fusion.Fixtures;
await using var fx = new FusionCacheFixture();
await fx.InitializeAsync();
var key = $"k-{Guid.NewGuid():N}";
var value = await fx.Cache.GetOrSetAsync<string>(key, async (_, _) =>
{
await Task.Yield();
return "computed";
});
| Property | Type | Default | Description |
|---|---|---|---|
DefaultDurationSeconds |
int |
60 |
TTL for GetOrSet entries |
IsFailSafeEnabled |
bool |
true |
Serve stale on loader failure |
FailSafeMaxDurationSeconds |
int |
3600 |
Fail-safe window upper bound |
EagerRefreshThreshold |
double |
0.8 |
Background refresh at 80 % of TTL |
Section name: RigTUnit:FusionCache.
Rig.TUnit.Caching.Fusion.Fixtures.FusionCacheFixtureRig.TUnit.Caching.Fusion.Options.FusionCacheFixtureOptionsRig.TUnit.Caching.Fusion.Builder.FusionCacheRigBuilderRig.TUnit.Caching.Fusion.Helpers.FailSafeHelperRig.TUnit.Caching.Fusion.Helpers.EagerRefreshHelperPer-fixture IFusionCache instance — each test owns its own cache
graph. No state is shared across tests by default; pairing with the
Redis L2 backplane adds the Redis key-prefix isolation pattern.
GetOrSetAsync warm hit: ~500 ns.IsFailSafeEnabled = true AND
FailSafeMaxDuration > 0 AND the loader threw (a null return is
not a failure).ClockControl from Rig.TUnit.Caching to
freeze.See .
See ;
baseline in benchmarks/baseline-005.json.
MIT. See .
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
Showing the top 1 NuGet packages that depend on Rig.TUnit.Caching.Fusion:
| Package | Downloads |
|---|---|
|
Rig.TUnit.All
Meta-package containing every Rig.TUnit.* package. DISCOURAGED — prefer per-feature or per-stack meta-packages (Rig.TUnit, Rig.TUnit.Microservices). |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-beta.2 | 70 | 4/27/2026 |
| 0.0.0-alpha.0.14 | 61 | 4/26/2026 |