Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A repository of copyable tests for implementations of .NET BCL interfaces

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 .gitignore
Octocat-spinner-32 IDictionaryTest_NUnit.cs
Octocat-spinner-32 IListTest_NUnit.cs
Octocat-spinner-32 README.md
README.md

Interface Tests for .NET

I've created this repository because I needed a default set of tests for the implementation of IDictionary in Simple.Data's SimpleRecord type.

While the internal implementation of that type is specific to the requirements of Simple.Data and its API, when it is used as an IDictionary its behaviour should be consistent and predictable according to the "contract" represented by that interface.

This is true of a whole bunch of interfaces that are defined in the .NET Base Class Library, and I hope that people will fork this repository and add more standard tests for things like IList, ISet and so on, or add more tests to existing files, and send me pull requests.

My starting test is for NUnit; if you prefer a different test framework, please suffix the filename with, e.g., "_XUnit" or "_MSTest".

I originally tried to implement this first test as a base abstract class, but the tooling support for running tests contained in a base class was so poor that I switched to having a single-class implementation. Hopefully the tooling will improve. :)

Something went wrong with that request. Please try again.