Skip to content

dariusz-wozniak/AutoTestGuardClausesDemo

Repository files navigation

Build status

AutoTestGuardClausesDemo

Test guard clauses in .ctors automatically.

E.g.:

public class Tests
{
    private static IEnumerable<Type> TypesToTest()
    {
        var selectMany = Assembly.Load("AutoTestGuardClauses").GetTypes();
        var types = selectMany.Where(t => t.IsClass &&
                                          t.Namespace != null &&
                                          t.Namespace.StartsWith("AutoTestGuardClauses"));

        foreach (var type in types) yield return type;
    }

    [TestCaseSource(nameof(TypesToTest))]
    public void AllConstructorsMustBeGuardClaused(Type type)
    {
        var fixture = new Fixture().Customize(new AutoMoqCustomization());

        var assertion = new GuardClauseAssertion(fixture);

        assertion.Verify(type.GetConstructors());
    }
}

Requirements:

  • AutoFixture.Idioms
  • AutoFixture.AutoMoq

About

Demo code for testing guard clauses in .ctors automatically

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages