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" />
                    
Directory.Packages.props
<PackageReference Include="QaaS.Common.Assertions" />
                    
Project file
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
                    
#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
                    
Install as a Cake Addin
#tool nuget:?package=QaaS.Common.Assertions&version=3.3.0
                    
Install as a Cake Tool

QaaS.Common.Assertions

Composable .NET package for validating QaaS test workflows.

CI Line Coverage Branch Coverage Docs .NET

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 NuGet Downloads

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, and Object inputs.
  • 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

Product 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.

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