Automating unit testing and ToString() coding
C# Batchfile
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.nuget
StatePrinter.Tests
StatePrinter
doc
.gitattributes
.gitignore
CHANGELOG.md
CONTRIBUTING.md
CreateNuget.cmd
DeployToNuget.cmd
HowToRelease.txt
LICENSE.md
README.md
Settings.StyleCop
StatePrinter.nuspec
StatePrinter.sln
appveyor.yml

README.md

StatePrinter

Build status Nuget Nuget Nuget Coverage Status License Stats Stats

Join the chat at https://gitter.im/kbilsted/StatePrinter

What is Stateprinter

A simple framework for automating aspects of implementing ToString()-methods, unit testing, and debugging. Speed is achieved through run-time code generation and caching.

Why you should take StatePrinter for a spin

  • No more manual ToString() - it is much easier to write robust and self-sufficient ToString() methods. Seamless integration into a code-base with manually implemented ToString-methods.
  • No more manual writing/updating Asserts - both for new tests and when the code changes, all tests can automatically be corrected.
  • No more screens full of asserts. Especially testing against object-graphs is a bliss.
  • Very configurable and extensible.
  • It is part of the back-end engine of other projects

How do I get started

The documentation is split into

and

and

Where can I get it?

Install Stateprinter from the package manager console:

PM> Install-Package StatePrinter

And for pre-release versions

PM> Install-Package StatePrinter -Pre

How can I get help?

For quick questions, Stack Overflow is your best bet. For harder questions, bugs, issues or feature requests, create a GitHub Issue (and let's chat).

How can I help out

Everyone is encouraged to help improve this project. Here are a few ways you can help:

  • Blog about your experinces with the tool. We highly need publicity. I'll gladly link from here to your blog.
  • Report bugs
  • Fix issues and submit pull requests
  • Write, clarify, or fix the documentation
  • Suggest or add new features

StatePrinter has been awarded a ReSharper group lincense, to share among all active contributers.

Versioning

Stateprinter is maintained under the Semantic Versioning guidelines as much as possible. Releases will be numbered with the following format:

<major>.<minor>.<build>

and constructed with the following guidelines:

  • Breaking backward compatibility bumps the major
  • New additions without breaking backward compatibility bumps the minor
  • Bug fixes and misc changes increase the build number

For more information on SemVer, please visit http://semver.org/.

History

Version History: http://github.com/kbilsted/StatePrinter/blob/master/CHANGELOG.md

This file describes the latest pushed changes. For documentation of earlier releases see: 1.0.6, 1.0.5, 1.0.4

Upgrading from v1.xx to v2.0.x should be a matter of configuring the Configuration.LegacyBehaviour

Upgrading from v2.0 to v2.1 simply follow the documentation in the obsolete attributes.

Requirements

Requires .NET 3.5 or newer.

License

Stateprinter is under the Apache License 2.0, meaning that you can freely use this in other open source or commercial products. If you use it for commercial products please have the courtesy to leave me an email with a 'thank you'.

Have fun!

Kasper B. Graversen