public static void CreateWithCustomSeverity() { const Severity suggestion = Severity.Suggestion; var data = new ExpressionBodiedData(); var style = new CSharpStyleExpressionBodiedAccessorsStyle(data, suggestion); Assert.That(style.Severity, Is.EqualTo(suggestion), nameof(style.Data)); }
public static void CreateWithNoData() { var data = new ExpressionBodiedData(); var style = new CSharpStyleExpressionBodiedAccessorsStyle(data); Assert.That(style.Data, Is.SameAs(data), nameof(style.Data)); Assert.That(style.GetSetting(), Is.EqualTo(string.Empty), nameof(style.GetSetting)); }
public static void GetSetting() { var data = new ExpressionBodiedData(2u, 1u, 1u, 0u); var style = new CSharpStyleExpressionBodiedAccessorsStyle(data); Assert.That(style.Data, Is.SameAs(data), nameof(style.Data)); Assert.That(style.GetSetting(), Is.EqualTo( $"{CSharpStyleExpressionBodiedAccessorsStyle.Setting} = true:{style.Severity.GetDescription()}"), nameof(style.GetSetting)); }
public static void CreateDefault() { var data = new ExpressionBodiedData(); Assert.That(data.TotalOccurences, Is.EqualTo(default(uint)), nameof(data.TotalOccurences)); Assert.That(data.ArrowSingleLineOccurences, Is.EqualTo(default(uint)), nameof(data.ArrowSingleLineOccurences)); Assert.That(data.ArrowMultiLineOccurences, Is.EqualTo(default(uint)), nameof(data.ArrowMultiLineOccurences)); Assert.That(data.BlockOccurences, Is.EqualTo(default(uint)), nameof(data.BlockOccurences)); }
public static void VerifyHashCodes() { var data1 = new ExpressionBodiedData(6, 1, 2, 3); var data2 = new ExpressionBodiedData(6, 2, 1, 3); var data3 = new ExpressionBodiedData(6, 1, 2, 3); Assert.That(data1.GetHashCode(), Is.Not.EqualTo(data2.GetHashCode())); Assert.That(data1.GetHashCode(), Is.EqualTo(data3.GetHashCode())); }
public static void Add() { var data1 = new ExpressionBodiedData(10u, 5u, 3u, 2u); var data2 = new ExpressionBodiedData(100u, 50u, 30u, 20u); var data3 = data1.Add(data2); Assert.That(data3.TotalOccurences, Is.EqualTo(110u), nameof(data3.TotalOccurences)); Assert.That(data3.ArrowSingleLineOccurences, Is.EqualTo(55u), nameof(data3.ArrowSingleLineOccurences)); Assert.That(data3.ArrowMultiLineOccurences, Is.EqualTo(33u), nameof(data3.ArrowMultiLineOccurences)); Assert.That(data3.BlockOccurences, Is.EqualTo(22u), nameof(data3.BlockOccurences)); }
public static void Update(ExpressionBodiedDataOccurence occurrence, uint expectedArrowSingleLineOccurences, uint expectedArrowMultiLineOccurences, uint expectedBlockOccurences) { var data = new ExpressionBodiedData(); data = data.Update(occurrence); Assert.That(data.TotalOccurences, Is.EqualTo(1u), nameof(data.TotalOccurences)); Assert.That(data.ArrowSingleLineOccurences, Is.EqualTo(expectedArrowSingleLineOccurences), nameof(data.ArrowSingleLineOccurences)); Assert.That(data.ArrowMultiLineOccurences, Is.EqualTo(expectedArrowMultiLineOccurences), nameof(data.ArrowMultiLineOccurences)); Assert.That(data.BlockOccurences, Is.EqualTo(expectedBlockOccurences), nameof(data.BlockOccurences)); }
public static void Create() { var totalOccurences = 10u; var arrowSingleLineOccurences = 5u; var arrowMultiLineOccurences = 3u; var blockOccurences = 2u; var data = new ExpressionBodiedData(totalOccurences, arrowSingleLineOccurences, arrowMultiLineOccurences, blockOccurences); Assert.That(data.TotalOccurences, Is.EqualTo(totalOccurences), nameof(data.TotalOccurences)); Assert.That(data.ArrowSingleLineOccurences, Is.EqualTo(arrowSingleLineOccurences), nameof(data.ArrowSingleLineOccurences)); Assert.That(data.ArrowMultiLineOccurences, Is.EqualTo(arrowMultiLineOccurences), nameof(data.ArrowMultiLineOccurences)); Assert.That(data.BlockOccurences, Is.EqualTo(blockOccurences), nameof(data.BlockOccurences)); }
internal static ExpressionBodiedData Examine(this SyntaxNode @this, ExpressionBodiedData current) { if (@this is null) { throw new ArgumentNullException(nameof(@this)); } if (current is null) { throw new ArgumentNullException(nameof(current)); } if ([email protected]) { var data = current; var arrows = @this.ChildNodes().Where(_ => _.Kind() == SyntaxKind.ArrowExpressionClause) .Cast <ArrowExpressionClauseSyntax>().ToImmutableArray(); foreach (var arrow in arrows) { var lines = arrow.DescendantTrivia().Count( _ => _.Kind() == SyntaxKind.EndOfLineTrivia); var occurence = lines >= 1 ? ExpressionBodiedDataOccurence.ArrowMultiLine : ExpressionBodiedDataOccurence.ArrowSingleLine; data = data.Update(occurence); } var singleLineBlockCount = (uint)@this.ChildNodes().Where(_ => _.Kind() == SyntaxKind.Block) .Cast <BlockSyntax>().Count( bs => bs.DescendantNodes().Count(_ => typeof(StatementSyntax).IsAssignableFrom(_.GetType())) == 1); for (var i = 0; i < singleLineBlockCount; i++) { data = data.Update(ExpressionBodiedDataOccurence.Block); } return(data); } else { return(current); } }
public static void VerifyEquality() { var data1 = new ExpressionBodiedData(6, 1, 2, 3); var data2 = new ExpressionBodiedData(6, 2, 1, 3); var data3 = new ExpressionBodiedData(6, 1, 2, 3); Assert.That(data1, Is.Not.EqualTo(data2)); Assert.That(data1, Is.EqualTo(data3)); Assert.That(data2, Is.Not.EqualTo(data3)); #pragma warning disable CS1718 // Comparison made to same variable Assert.That(data1 == data1, Is.True); #pragma warning restore CS1718 // Comparison made to same variable Assert.That(data1 == data2, Is.False); Assert.That(data1 == data3, Is.True); Assert.That(data2 == data3, Is.False); Assert.That(data1 != data2, Is.True); Assert.That(data1 != data3, Is.False); Assert.That(data2 != data3, Is.True); }
public CSharpStyleExpressionBodiedConstructorsStyle(ExpressionBodiedData data, Severity severity = Severity.Error) : base(data, severity) { }
public static void GetSettingWithNoOccurrences() { var data = new ExpressionBodiedData(0u, 0u, 0u, 0u); Assert.That(data.GetSetting("x", Severity.Error), Is.EqualTo(string.Empty), nameof(data.GetSetting)); }
public static void AddWithNull() { var data = new ExpressionBodiedData(); Assert.That(() => data.Add(null !), Throws.TypeOf <ArgumentNullException>()); }
public static void GetSettingWithBlocks() { var data = new ExpressionBodiedData(1u, 0u, 0u, 1u); Assert.That(data.GetSetting("x", Severity.Error), Is.EqualTo("x = false:error"), nameof(data.GetSetting)); }
public static void GetSettingWhenOnSingleLine() { var data = new ExpressionBodiedData(4u, 1u, 2u, 1u); Assert.That(data.GetSetting("x", Severity.Error), Is.EqualTo("x = when_on_single_line:error"), nameof(data.GetSetting)); }
public CSharpStyleExpressionBodiedPropertiesStyle(ExpressionBodiedData data, Severity severity = Severity.Error) : base(data, severity) { }
public CSharpStyleExpressionBodiedIndexersStyle(ExpressionBodiedData data, Severity severity = Severity.Error) : base(data, severity) { }
public static void GetSettingWithFavoritingArrows() { var data = new ExpressionBodiedData(5u, 3u, 1u, 1u); Assert.That(data.GetSetting("x", Severity.Error), Is.EqualTo("x = true:error"), nameof(data.GetSetting)); }