Linkoid.SmiteLib 0.3.0-alpha

Suggested Alternatives

Linkoid.SmiteUnit

This is a prerelease version of Linkoid.SmiteLib.
dotnet add package Linkoid.SmiteLib --version 0.3.0-alpha                
NuGet\Install-Package Linkoid.SmiteLib -Version 0.3.0-alpha                
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="Linkoid.SmiteLib" Version="0.3.0-alpha" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Linkoid.SmiteLib --version 0.3.0-alpha                
#r "nuget: Linkoid.SmiteLib, 0.3.0-alpha"                
#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.
// Install Linkoid.SmiteLib as a Cake Addin
#addin nuget:?package=Linkoid.SmiteLib&version=0.3.0-alpha&prerelease

// Install Linkoid.SmiteLib as a Cake Tool
#tool nuget:?package=Linkoid.SmiteLib&version=0.3.0-alpha&prerelease                

SmiteLib

Subprocess Method Invocation Test Library

What is SmiteLib?

SmiteLib is a testing library for use in environments where a traditional unit testing framework cannot be used.

Common examples of using SmiteLib include:

  • Testing a plugin for an application
  • Testing a mod for a video game
  • Running automated integration tests

SmiteLib works by running a test in a sub process and capturing its input and output. Somewhere in this process there is a hook that checks for a specific test that the parent process is attempting to invoke. At the injection point if a valid test is found, the test is executed and the result is reported back to the parent process. What sets this library apart from other testing frameworks is the test writer has complete control over where the injection point is. This means that if the only way your code can possibly execute properly is as an injected dependency inside of another application that perhaps doesn't even have a proper debug mode, you will still be able to run these tests in an automated fashion.

Smite Lib is also designed to function well with other testing frameworks and it is even possible to run smitelib inside of unit test Written in a different framework. This would even be the ideal use case in situations where specific input and output of the application needs to be tested for instantce standard input and standard output.

Key Design Requirements

  • SmiteLib should be usable in any program where the SmiteLib assembly can be loaded and executed.
  • The program in which the test is executed must be viewed as a black box.
There are no supported framework assets in this 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.