Excalibur.Testing.Conformance
3.0.0-alpha.19
dotnet add package Excalibur.Testing.Conformance --version 3.0.0-alpha.19
NuGet\Install-Package Excalibur.Testing.Conformance -Version 3.0.0-alpha.19
<PackageReference Include="Excalibur.Testing.Conformance" Version="3.0.0-alpha.19" />
<PackageVersion Include="Excalibur.Testing.Conformance" Version="3.0.0-alpha.19" />
<PackageReference Include="Excalibur.Testing.Conformance" />
paket add Excalibur.Testing.Conformance --version 3.0.0-alpha.19
#r "nuget: Excalibur.Testing.Conformance, 3.0.0-alpha.19"
#:package Excalibur.Testing.Conformance@3.0.0-alpha.19
#addin nuget:?package=Excalibur.Testing.Conformance&version=3.0.0-alpha.19&prerelease
#tool nuget:?package=Excalibur.Testing.Conformance&version=3.0.0-alpha.19&prerelease
Excalibur.Testing.Conformance
Conformance test kits for Excalibur infrastructure implementations. Provides reusable abstract test suites that verify provider implementations conform to the expected contracts for IEventStore, ISnapshotStore, IOutboxStore, ISagaStore, and other infrastructure interfaces.
Installation
dotnet add package Excalibur.Testing.Conformance
Purpose
When implementing a custom provider (e.g., a new database backend for event sourcing), use these conformance test kits to verify your implementation meets all contract requirements. Each test kit provides a comprehensive set of tests covering happy paths, edge cases, and error handling.
Available Test Kits
| Test Kit | Interface Under Test |
|---|---|
EventStoreConformanceTestKit |
IEventStore |
SnapshotStoreConformanceTestKit |
ISnapshotStore |
OutboxStoreConformanceTestKit |
IOutboxStore |
InboxStoreConformanceTestKit |
IInboxStore |
SagaStoreConformanceTestKit |
ISagaStore |
DeadLetterStoreConformanceTestKit |
IDeadLetterStore |
LeaderElectionConformanceTestKit |
ILeaderElection |
EncryptionProviderConformanceTestKit |
IEncryptionProvider |
AuditStoreConformanceTestKit |
IAuditStore |
Quick Start
public class MyCustomEventStoreConformanceTests : EventStoreConformanceTestKit
{
protected override IEventStore CreateEventStore()
{
// Return your custom implementation
return new MyCustomEventStore(connectionString);
}
}
Documentation
See the testing documentation for detailed guides.
License
This package is part of the Excalibur framework. See LICENSE for license details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- AWSSDK.Core (>= 4.0.3.8)
- AWSSDK.SecurityToken (>= 4.0.5.6)
- Ben.Demystifier (>= 0.4.1)
- BenchmarkDotNet (>= 0.15.4)
- CloudNative.CloudEvents (>= 2.8.0)
- CloudNative.CloudEvents.SystemTextJson (>= 2.8.0)
- Consul (>= 1.7.14.9)
- Cronos (>= 0.11.1)
- Dapper (>= 2.1.66)
- Excalibur.Dispatch (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Caching (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Compliance (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Compliance.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.LeaderElection.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Patterns (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Transport.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Domain (>= 3.0.0-alpha.19)
- Excalibur.EventSourcing.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Testing (>= 3.0.0-alpha.19)
- Grpc.Net.Client (>= 2.71.0)
- KubernetesClient (>= 17.0.14)
- Medo.Uuid7 (>= 1.4.0)
- MemoryPack (>= 1.21.4)
- Microsoft.ApplicationInsights (>= 2.23.0)
- Microsoft.AspNetCore.Authorization (>= 9.0.9)
- Microsoft.CodeAnalysis.Analyzers (>= 3.11.0)
- Microsoft.CodeAnalysis.Common (>= 4.14.0)
- Microsoft.CodeAnalysis.CSharp (>= 4.14.0)
- Microsoft.Extensions.Caching.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Caching.Hybrid (>= 9.9.0)
- Microsoft.Extensions.Caching.Memory (>= 10.0.0)
- Microsoft.Extensions.Caching.StackExchangeRedis (>= 10.0.0)
- Microsoft.Extensions.Configuration (>= 10.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 10.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Http (>= 10.0.0)
- Microsoft.Extensions.Logging (>= 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0)
- Microsoft.Extensions.ObjectPool (>= 10.0.0)
- Microsoft.Extensions.Options (>= 10.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.0)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.0)
- MongoDB.Driver (>= 2.25.0)
- NCrontab (>= 3.4.0)
- Npgsql (>= 9.0.4)
- OpenTelemetry (>= 1.13.0)
- OpenTelemetry.Api (>= 1.13.0)
- OpenTelemetry.Extensions.Hosting (>= 1.13.0)
- Polly (>= 8.6.4)
- QuestPDF (>= 2024.12.2)
- Snappier (>= 1.2.0)
- StackExchange.Redis (>= 2.9.25)
- System.Threading.RateLimiting (>= 10.0.0)
- YamlDotNet (>= 16.3.0)
-
net8.0
- AWSSDK.Core (>= 4.0.3.8)
- AWSSDK.SecurityToken (>= 4.0.5.6)
- Ben.Demystifier (>= 0.4.1)
- BenchmarkDotNet (>= 0.15.4)
- CloudNative.CloudEvents (>= 2.8.0)
- CloudNative.CloudEvents.SystemTextJson (>= 2.8.0)
- Consul (>= 1.7.14.9)
- Cronos (>= 0.11.1)
- Dapper (>= 2.1.66)
- Excalibur.Dispatch (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Caching (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Compliance (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Compliance.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.LeaderElection.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Patterns (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Transport.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Domain (>= 3.0.0-alpha.19)
- Excalibur.EventSourcing.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Testing (>= 3.0.0-alpha.19)
- Grpc.Net.Client (>= 2.71.0)
- KubernetesClient (>= 17.0.14)
- Medo.Uuid7 (>= 1.4.0)
- MemoryPack (>= 1.21.4)
- Microsoft.ApplicationInsights (>= 2.23.0)
- Microsoft.AspNetCore.Authorization (>= 9.0.9)
- Microsoft.CodeAnalysis.Analyzers (>= 3.11.0)
- Microsoft.CodeAnalysis.Common (>= 4.14.0)
- Microsoft.CodeAnalysis.CSharp (>= 4.14.0)
- Microsoft.Extensions.Caching.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Caching.Hybrid (>= 9.9.0)
- Microsoft.Extensions.Caching.Memory (>= 10.0.0)
- Microsoft.Extensions.Caching.StackExchangeRedis (>= 10.0.0)
- Microsoft.Extensions.Configuration (>= 10.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 10.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Http (>= 10.0.0)
- Microsoft.Extensions.Logging (>= 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0)
- Microsoft.Extensions.ObjectPool (>= 10.0.0)
- Microsoft.Extensions.Options (>= 10.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.0)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.0)
- MongoDB.Driver (>= 2.25.0)
- NCrontab (>= 3.4.0)
- Npgsql (>= 9.0.4)
- OpenTelemetry (>= 1.13.0)
- OpenTelemetry.Api (>= 1.13.0)
- OpenTelemetry.Extensions.Hosting (>= 1.13.0)
- Polly (>= 8.6.4)
- QuestPDF (>= 2024.12.2)
- Snappier (>= 1.2.0)
- StackExchange.Redis (>= 2.9.25)
- System.Collections.Immutable (>= 10.0.0)
- System.Diagnostics.DiagnosticSource (>= 10.0.0)
- System.IO.Pipelines (>= 10.0.0)
- System.Text.Json (>= 10.0.0)
- System.Threading.Channels (>= 10.0.0)
- System.Threading.RateLimiting (>= 10.0.0)
- YamlDotNet (>= 16.3.0)
-
net9.0
- AWSSDK.Core (>= 4.0.3.8)
- AWSSDK.SecurityToken (>= 4.0.5.6)
- Ben.Demystifier (>= 0.4.1)
- BenchmarkDotNet (>= 0.15.4)
- CloudNative.CloudEvents (>= 2.8.0)
- CloudNative.CloudEvents.SystemTextJson (>= 2.8.0)
- Consul (>= 1.7.14.9)
- Cronos (>= 0.11.1)
- Dapper (>= 2.1.66)
- Excalibur.Dispatch (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Caching (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Compliance (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Compliance.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.LeaderElection.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Patterns (>= 3.0.0-alpha.19)
- Excalibur.Dispatch.Transport.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Domain (>= 3.0.0-alpha.19)
- Excalibur.EventSourcing.Abstractions (>= 3.0.0-alpha.19)
- Excalibur.Testing (>= 3.0.0-alpha.19)
- Grpc.Net.Client (>= 2.71.0)
- KubernetesClient (>= 17.0.14)
- Medo.Uuid7 (>= 1.4.0)
- MemoryPack (>= 1.21.4)
- Microsoft.ApplicationInsights (>= 2.23.0)
- Microsoft.AspNetCore.Authorization (>= 9.0.9)
- Microsoft.CodeAnalysis.Analyzers (>= 3.11.0)
- Microsoft.CodeAnalysis.Common (>= 4.14.0)
- Microsoft.CodeAnalysis.CSharp (>= 4.14.0)
- Microsoft.Extensions.Caching.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Caching.Hybrid (>= 9.9.0)
- Microsoft.Extensions.Caching.Memory (>= 10.0.0)
- Microsoft.Extensions.Caching.StackExchangeRedis (>= 10.0.0)
- Microsoft.Extensions.Configuration (>= 10.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 10.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Http (>= 10.0.0)
- Microsoft.Extensions.Logging (>= 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0)
- Microsoft.Extensions.ObjectPool (>= 10.0.0)
- Microsoft.Extensions.Options (>= 10.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.0)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.0)
- MongoDB.Driver (>= 2.25.0)
- NCrontab (>= 3.4.0)
- Npgsql (>= 9.0.4)
- OpenTelemetry (>= 1.13.0)
- OpenTelemetry.Api (>= 1.13.0)
- OpenTelemetry.Extensions.Hosting (>= 1.13.0)
- Polly (>= 8.6.4)
- QuestPDF (>= 2024.12.2)
- Snappier (>= 1.2.0)
- StackExchange.Redis (>= 2.9.25)
- System.Diagnostics.DiagnosticSource (>= 10.0.0)
- System.IO.Pipelines (>= 10.0.0)
- System.Text.Json (>= 10.0.0)
- System.Threading.Channels (>= 10.0.0)
- System.Threading.RateLimiting (>= 10.0.0)
- YamlDotNet (>= 16.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0-alpha.19 | 32 | 2/26/2026 |