QaaS.Common.Assertions
3.3.0
dotnet add package QaaS.Common.Assertions --version 3.3.0
NuGet\Install-Package QaaS.Common.Assertions -Version 3.3.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="QaaS.Common.Assertions" Version="3.3.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="QaaS.Common.Assertions" Version="3.3.0" />
<PackageReference Include="QaaS.Common.Assertions" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add QaaS.Common.Assertions --version 3.3.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: QaaS.Common.Assertions, 3.3.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package QaaS.Common.Assertions@3.3.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=QaaS.Common.Assertions&version=3.3.0
#tool nuget:?package=QaaS.Common.Assertions&version=3.3.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
QaaS.Common.Assertions
Composable .NET package for validating QaaS test workflows.
Contents
Overview
This repository contains one solution: QaaS.Common.Assertions.sln.
The solution is split into a focused package project and a test project so you can consume assertions as a NuGet package and validate behavior with a dedicated NUnit suite.
Packages
| Package | Latest Version | Total Downloads |
|---|---|---|
| QaaS.Common.Assertions |
Functionalities
QaaS.Common.Assertions
HermeticByExpectedOutputCount: validates output totals against an exact expected count.HermeticByExpectedOutputCountInRange: validates output totals inside min/max bounds.HermeticByInputOutputPercentage: validates output count as an expected percentage of input count.HermeticByInputOutputPercentageInRange: validates output/input percentage inside a range.ValidateHermeticMetricsByInputOutputPercentage: compares metrics-based hermetic percentage to IO-based percentage with tolerance.DelayByAverage: validates average output delay against average input timestamp.DelayByChunks: validates per-chunk delay with configurable chunk size and chunk timestamp strategy.OutputContentByExpectedCsvResults: validates output payload fields against expected CSV results.- Field-level validators include exact value, error range, exact override value, and base64-to-hex matching.
- Supports JSON conversion from
Json,Xml, andObjectinputs. ObjectOutputJsonSchema: validates each output item against one or more JSON schemas provided by data sources.- Supports multiple JSON schema drafts (06/07/2019-09/2020-12/next).
OutputDeserializableTo: validates that all output items are deserializable with the configured QaaS deserializer.HttpStatus: validates that all configured output items contain the expected HTTP status code.
QaaS.Common.Assertions.Tests
- NUnit-based verification of assertion behaviors, edge cases, and failure traces.
- Covers hermetic assertions, delay assertions, content validation, schema validation, deserialization, and HTTP metadata assertions.
Protocol Support
Supported assertion families in QaaS.Common.Assertions:
| Family | Implementations |
|---|---|
| Hermetic | HermeticByExpectedOutputCount, HermeticByExpectedOutputCountInRange, HermeticByInputOutputPercentage, HermeticByInputOutputPercentageInRange, ValidateHermeticMetricsByInputOutputPercentage |
| Delay | DelayByAverage, DelayByChunks |
| Content Validation | OutputContentByExpectedCsvResults with exact/error-range/override/base64-to-hex field validators |
| Schema Validation | ObjectOutputJsonSchema |
| Deserialization | OutputDeserializableTo |
| HTTP Metadata | HttpStatus |
Quick Start
Install package:
dotnet add package QaaS.Common.Assertions
Update package:
dotnet add package QaaS.Common.Assertions --version <TARGET_VERSION>
dotnet restore
Build and Test
dotnet restore QaaS.Common.Assertions.sln
dotnet build QaaS.Common.Assertions.sln -c Release --no-restore
dotnet test QaaS.Common.Assertions.sln -c Release --no-build
Documentation
- Official docs: thesmoketeam.github.io/qaas-docs
- CI workflow:
.github/workflows/ci.yml - NuGet feed query: QaaS.Common.Assertions on NuGet search
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- JsonPath.Net (>= 3.0.2)
- JsonPointer.Net (>= 7.0.1)
- JsonSchema.Net (>= 9.1.3)
- morelinq (>= 4.4.0)
- Newtonsoft.Json (>= 13.0.4)
- QaaS.Framework.Configurations (>= 1.4.0)
- QaaS.Framework.SDK (>= 1.4.0)
- QaaS.Framework.Serialization (>= 1.4.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.3.0 | 84 | 3/31/2026 |
| 3.2.1 | 152 | 3/28/2026 |
| 3.2.1-alpha.2 | 61 | 3/28/2026 |
| 3.2.1-alpha.1 | 79 | 3/28/2026 |
| 3.2.0 | 89 | 3/25/2026 |
| 3.1.3 | 88 | 3/23/2026 |
| 3.1.3-alpha.1 | 33 | 3/22/2026 |
| 3.1.2 | 91 | 3/21/2026 |
| 3.1.1 | 88 | 3/17/2026 |
| 3.1.0 | 88 | 3/16/2026 |
| 3.1.0-alpha.4 | 45 | 3/15/2026 |
| 3.1.0-alpha.3 | 32 | 3/15/2026 |
| 3.1.0-alpha.2 | 44 | 3/13/2026 |
| 3.1.0-alpha.1 | 50 | 3/12/2026 |
| 3.0.0-alpha.4 | 44 | 3/11/2026 |
| 3.0.0-alpha.3 | 46 | 3/4/2026 |
| 3.0.0-alpha.1 | 47 | 3/4/2026 |