Sha256: 0a61ad63910565fb3c2305fb735ac4b7ac20acfd38d437a93a702da82821c6fe

Contents?: true

Size: 1.09 KB

Versions: 78

Compression:

Stored size: 1.09 KB

Contents

using System;
using Generators.Helpers;

namespace Generators.Methods
{
    public class BooleanTestMethodGenerator : TestMethodGenerator
    {
        protected override string Body
        {
            get
            {
                switch (TestMethodData.Options.TestedMethodType)
                {
                    case TestedMethodType.Static:
                        return $"{Assertion}({TestedClassName}.{TestedMethod}({Input}));";
                    case TestedMethodType.Instance:
                        return $"var sut = new {TestedClassName}();\n    {Assertion}(sut.{TestedMethod}({Input}));";
                    case TestedMethodType.Extension:
                        return $"{Assertion}({Input}.{TestedMethod}());";
                    default:
                        throw new ArgumentOutOfRangeException();
                }
            }
        }

        private string Assertion
            => $"Assert.{Convert.ToBoolean(TestMethodData.CanonicalDataCase.Expected)}";

        protected override string TestedMethod
            => base.TestedMethod.EnsureStartsWith("Is");
    }
}

Version data entries

78 entries across 78 versions & 1 rubygems

Version Path
trackler-2.1.0.27 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.26 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.25 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.24 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.23 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.22 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.21 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.20 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.19 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.18 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.17 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.16 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.15 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.14 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.13 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.12 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.11 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.10 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.9 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs
trackler-2.1.0.8 tracks/csharp/generators/Methods/BooleanTestMethodGenerator.cs