diff --git a/ArchUnitNETTests/AssemblyTestHelper/AttributeAssemblyTestHelper.cs b/ArchUnitNETTests/AssemblyTestHelper/AttributeAssemblyTestHelper.cs index 639d306e..a26305f2 100644 --- a/ArchUnitNETTests/AssemblyTestHelper/AttributeAssemblyTestHelper.cs +++ b/ArchUnitNETTests/AssemblyTestHelper/AttributeAssemblyTestHelper.cs @@ -1,76 +1,15 @@ using System.Linq; using ArchUnitNET.Domain; using ArchUnitNET.Domain.Extensions; +using ArchUnitNET.Loader; using AttributeNamespace; namespace ArchUnitNETTests.AssemblyTestHelper; public class AttributeAssemblyTestHelpers : AssemblyTestHelper { - public override Architecture Architecture - { - get => StaticTestArchitectures.AttributeArchitecture; - } - - public string NonExistentAttributeValue = "NotTheValueOfAnyAttribute"; - - public object Attribute1Parameter1Value = "Argument"; - public object Attribute1Parameter2Value = 0; - public object Attribute1Parameter3Value = typeof(TypeArgument); - public object Attribute1Parameter3InvalidValue = typeof(OtherTypeArgument); - - public string Attribute1NamedParameter1Name = "NamedParameter1"; - public object Attribute1NamedParameter1Value = typeof(NamedTypeArgument); - public (string, object) Attribute1NamedParameter1Pair = ( - "NamedParameter1", - typeof(NamedTypeArgument) - ); - public (string, object) Attribute1NamedParameter1InvalidNamePair = ( - "OtherNamedParameter1", - typeof(NamedTypeArgument) - ); - public (string, object) Attribute1NamedParameter1InvalidValuePair = ( - "NamedParameter1", - typeof(OtherNamedTypeArgument) - ); - public string Attribute1NamedParameter2Name = "NamedParameter2"; - public object Attribute1NamedParameter2Value = "NamedArgument"; - public (string, object) Attribute1NamedParameter2Pair = ("NamedParameter2", "NamedArgument"); - public (string, object) Attribute1NamedParameter2InvalidNamePair = ( - "OtherNamedParameter2", - "NamedArgument" - ); - public (string, object) Attribute1NamedParameter2InvalidValuePair = ( - "NamedParameter2", - "OtherNamedArgument" - ); - public string Attribute1NamedParameter3Name = "NamedParameter3"; - public object Attribute1NamedParameter3Value = 1; - public (string, object) Attribute1NamedParameter3Pair = ("NamedParameter3", 1); - - public object Attribute2Parameter1Value = typeof(OtherTypeArgument); - public object Attribute2Parameter2Value = "OtherArgument"; - public object Attribute2Parameter3Value = 2; - - public string Attribute2NamedParameter1Name = "OtherNamedParameter1"; - public object Attribute2NamedParameter1Value = "OtherNamedArgument"; - public (string, object) Attribute2NamedParameter1Pair = ( - "OtherNamedParameter1", - "OtherNamedArgument" - ); - public string Attribute2NamedParameter2Name = "OtherNamedParameter2"; - public object Attribute2NamedParameter2Value = 3; - public (string, object) Attribute2NamedParameter2Pair = ("OtherNamedParameter2", 3); - public string Attribute2NamedParameter3Name = "OtherNamedParameter3"; - public object Attribute2NamedParameter3Value = typeof(OtherNamedTypeArgument); - public (string, object) Attribute2NamedParameter3Pair = ( - "OtherNamedParameter3", - typeof(OtherNamedTypeArgument) - ); - - public string UnusedParameterName = "UnusedParameter"; - public object UnusedParameterValue = "UnusedValueArgument"; - public object UnusedTypeParameterValue = typeof(UnusedTypeArgument); + public sealed override Architecture Architecture => + StaticTestArchitectures.AttributeArchitecture; public Attribute Attribute1; public System.Type Attribute1SystemType = typeof(Attribute1); @@ -78,50 +17,110 @@ public override Architecture Architecture public Attribute Attribute2; public System.Type Attribute2SystemType = typeof(Attribute2); + public Attribute Attribute3; + public System.Type Attribute3SystemType = typeof(Attribute3); + + public Attribute OnceUsedAttribute; + public System.Type OnceUsedAttributeSystemType = typeof(OnceUsedAttribute); + public Attribute UnusedAttribute; public System.Type UnusedAttributeSystemType = typeof(UnusedAttribute); public Class ClassWithoutAttributes; public System.Type ClassWithoutAttributesSystemType = typeof(ClassWithoutAttributes); - public Class OtherClassWithoutAttributes; - public System.Type OtherClassWithoutAttributesSystemType = typeof(OtherClassWithoutAttributes); - public Class ClassWithSingleAttribute; public System.Type ClassWithSingleAttributeSystemType = typeof(ClassWithSingleAttribute); - public Class OtherClassWithSingleAttribute; - public System.Type OtherClassWithSingleAttributeSystemType = - typeof(OtherClassWithSingleAttribute); + public Class ClassWithSingleUniquelyUsedAttribute; + public System.Type ClassWithSingleUniquelyUsedAttributeSystemType = + typeof(ClassWithSingleUniquelyUsedAttribute); + + public Class ClassWithTwoAttributes; + public System.Type ClassWithTwoAttributesSystemType = typeof(ClassWithTwoAttributes); + + public Class ClassWithThreeAttributes; + public System.Type ClassWithThreeAttributesSystemType = typeof(ClassWithThreeAttributes); + + public readonly string UnusedAttributeStringValue = "NotTheValueOfAnyAttribute"; + public readonly int UnusedAttributeIntValue = 42; + public readonly Class UnusedTypeArgument; + public readonly System.Type UnusedTypeArgumentSystemType = typeof(UnusedTypeArgument); + + public readonly object Attribute1StringArgument = "Argument1"; + public readonly object Attribute1IntegerArgument = 1; + public readonly object Attribute1TypeArgument; + public readonly object Attribute1TypeArgumentSystemType = typeof(TypeArgument1); + + public readonly object Attribute2StringArgument = "Argument2"; + public readonly object Attribute2IntegerArgument = 2; + public readonly object Attribute2TypeArgument; + public readonly object Attribute2TypeArgumentSystemType = typeof(TypeArgument2); - public Class ClassWithAttributes; - public System.Type ClassWithAttributesSystemType = typeof(ClassWithAttributes); + public readonly object Attribute3StringArgument = "Argument3"; + public readonly object Attribute3IntegerArgument = 3; + public readonly object Attribute3TypeArgument; + public readonly object Attribute3TypeArgumentSystemType = typeof(TypeArgument3); - public Class OtherClassWithAttributes; - public System.Type OtherClassWithAttributesSystemType = typeof(OtherClassWithAttributes); + public Class ClassWithSingleAttributeWithArguments; + public System.Type ClassWithSingleAttributeWithArgumentsSystemType = + typeof(ClassWithSingleAttributeWithArguments); - public Class ClassWithArguments; - public System.Type ClassWithArgumentsSystemType = typeof(ClassWithArguments); + public Class ClassWithTwoAttributesWithArguments; + public System.Type ClassWithTwoAttributesWithArgumentsSystemType = + typeof(ClassWithTwoAttributesWithArguments); - public Class OtherClassWithArguments; - public System.Type OtherClassWithArgumentsSystemType = typeof(OtherClassWithArguments); + public Class ClassWithThreeAttributesWithArguments; + public System.Type ClassWithThreeAttributesWithArgumentsSystemType = + typeof(ClassWithThreeAttributesWithArguments); + + public Class ClassWithSingleAttributeWithNamedArguments; + public System.Type ClassWithSingleAttributeWithNamedArgumentsSystemType = + typeof(ClassWithSingleAttributeWithNamedArguments); + + public Class ClassWithTwoAttributesWithNamedArguments; + public System.Type ClassWithTwoAttributesWithNamedArgumentsSystemType = + typeof(ClassWithTwoAttributesWithNamedArguments); + + public Class ClassWithThreeAttributesWithNamedArguments; + public System.Type ClassWithThreeAttributesWithNamedArgumentsSystemType = + typeof(ClassWithThreeAttributesWithNamedArguments); public AttributeAssemblyTestHelpers() { Attribute1 = Architecture.GetAttributeOfType(typeof(Attribute1)); Attribute2 = Architecture.GetAttributeOfType(typeof(Attribute2)); + Attribute3 = Architecture.GetAttributeOfType(typeof(Attribute3)); + OnceUsedAttribute = Architecture.GetAttributeOfType(typeof(OnceUsedAttribute)); UnusedAttribute = Architecture.GetAttributeOfType(typeof(UnusedAttribute)); ClassWithoutAttributes = Architecture.GetClassOfType(typeof(ClassWithoutAttributes)); - OtherClassWithoutAttributes = Architecture.GetClassOfType( - typeof(OtherClassWithoutAttributes) - ); ClassWithSingleAttribute = Architecture.GetClassOfType(typeof(ClassWithSingleAttribute)); - OtherClassWithSingleAttribute = Architecture.GetClassOfType( - typeof(OtherClassWithSingleAttribute) + ClassWithSingleUniquelyUsedAttribute = Architecture.GetClassOfType( + typeof(ClassWithSingleUniquelyUsedAttribute) + ); + ClassWithTwoAttributes = Architecture.GetClassOfType(typeof(ClassWithTwoAttributes)); + ClassWithThreeAttributes = Architecture.GetClassOfType(typeof(ClassWithThreeAttributes)); + UnusedTypeArgument = Architecture.GetClassOfType(typeof(UnusedTypeArgument)); + Attribute1TypeArgument = Architecture.GetClassOfType(typeof(TypeArgument1)); + Attribute2TypeArgument = Architecture.GetClassOfType(typeof(TypeArgument2)); + Attribute3TypeArgument = Architecture.GetClassOfType(typeof(TypeArgument3)); + ClassWithSingleAttributeWithArguments = Architecture.GetClassOfType( + typeof(ClassWithSingleAttributeWithArguments) + ); + ClassWithTwoAttributesWithArguments = Architecture.GetClassOfType( + typeof(ClassWithTwoAttributesWithArguments) + ); + ClassWithThreeAttributesWithArguments = Architecture.GetClassOfType( + typeof(ClassWithThreeAttributesWithArguments) + ); + ClassWithSingleAttributeWithNamedArguments = Architecture.GetClassOfType( + typeof(ClassWithSingleAttributeWithNamedArguments) + ); + ClassWithTwoAttributesWithNamedArguments = Architecture.GetClassOfType( + typeof(ClassWithTwoAttributesWithNamedArguments) + ); + ClassWithThreeAttributesWithNamedArguments = Architecture.GetClassOfType( + typeof(ClassWithThreeAttributesWithNamedArguments) ); - ClassWithAttributes = Architecture.GetClassOfType(typeof(ClassWithAttributes)); - OtherClassWithAttributes = Architecture.GetClassOfType(typeof(OtherClassWithAttributes)); - ClassWithArguments = Architecture.GetClassOfType(typeof(ClassWithArguments)); - OtherClassWithArguments = Architecture.GetClassOfType(typeof(OtherClassWithArguments)); } } diff --git a/ArchUnitNETTests/AssemblyTestHelper/DependencyAssemblyTestHelpers.cs b/ArchUnitNETTests/AssemblyTestHelper/DependencyAssemblyTestHelpers.cs index 123ae5fb..fff012da 100644 --- a/ArchUnitNETTests/AssemblyTestHelper/DependencyAssemblyTestHelpers.cs +++ b/ArchUnitNETTests/AssemblyTestHelper/DependencyAssemblyTestHelpers.cs @@ -8,10 +8,8 @@ namespace ArchUnitNETTests.AssemblyTestHelper; public class DependencyAssemblyTestHelper : AssemblyTestHelper { - public override Architecture Architecture - { - get => StaticTestArchitectures.DependencyArchitecture; - } + public sealed override Architecture Architecture => + StaticTestArchitectures.DependencyArchitecture; public Class BaseClass; public Type BaseClassSystemType = typeof(BaseClass); diff --git a/ArchUnitNETTests/AssemblyTestHelper/VisibilityAssemblyTestHelper.cs b/ArchUnitNETTests/AssemblyTestHelper/VisibilityAssemblyTestHelper.cs index 7a8c5914..4b1be819 100644 --- a/ArchUnitNETTests/AssemblyTestHelper/VisibilityAssemblyTestHelper.cs +++ b/ArchUnitNETTests/AssemblyTestHelper/VisibilityAssemblyTestHelper.cs @@ -9,10 +9,8 @@ namespace ArchUnitNETTests.AssemblyTestHelper; public class VisibilityAssemblyTestHelper : AssemblyTestHelper { - public override Architecture Architecture - { - get => StaticTestArchitectures.VisibilityArchitecture; - } + public sealed override Architecture Architecture => + StaticTestArchitectures.VisibilityArchitecture; public Class PublicClass; public Type PublicSystemType = typeof(PublicClass); diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/ObjectsShouldTests.cs b/ArchUnitNETTests/Fluent/Syntax/Elements/ObjectsShouldTests.cs index 8594c1c7..7dabc689 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/ObjectsShouldTests.cs +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/ObjectsShouldTests.cs @@ -713,7 +713,7 @@ public async Task HaveAnyAttributesTest() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations"); - var should = Types().That().Are(helper.ClassWithAttributes).Should(); + var should = Types().That().Are(helper.ClassWithTwoAttributes).Should(); should.HaveAnyAttributes(helper.Attribute1).AssertNoViolations(helper); should.HaveAnyAttributes([helper.Attribute1]).AssertNoViolations(helper); should.HaveAnyAttributes(helper.Attribute1SystemType).AssertNoViolations(helper); @@ -723,7 +723,7 @@ public async Task HaveAnyAttributesTest() .AssertNoViolations(helper); helper.AddSnapshotHeader("Violations"); - should = Types().That().Are(helper.ClassWithAttributes).Should(); + should = Types().That().Are(helper.ClassWithTwoAttributes).Should(); should.HaveAnyAttributes(helper.UnusedAttribute).AssertOnlyViolations(helper); should.HaveAnyAttributes([helper.UnusedAttribute]).AssertOnlyViolations(helper); should.HaveAnyAttributes(helper.UnusedAttributeSystemType).AssertOnlyViolations(helper); @@ -733,7 +733,7 @@ public async Task HaveAnyAttributesTest() .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Empty arguments"); - should = Types().That().Are(helper.ClassWithAttributes).Should(); + should = Types().That().Are(helper.ClassWithTwoAttributes).Should(); should.HaveAnyAttributes(new List()).AssertOnlyViolations(helper); should.HaveAnyAttributes(new List()).AssertOnlyViolations(helper); should @@ -741,7 +741,7 @@ public async Task HaveAnyAttributesTest() .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithAttributes).Should(); + should = Types().That().Are(helper.ClassWithTwoAttributes).Should(); should .HaveAnyAttributes(helper.Attribute1, helper.UnusedAttribute) .AssertNoViolations(helper); @@ -761,13 +761,13 @@ public async Task HaveAnyAttributesTest() helper.AddSnapshotHeader("Multiple inputs"); Types() .That() - .Are(helper.ClassWithAttributes, helper.OtherClassWithAttributes) + .Are(helper.ClassWithTwoAttributes, helper.ClassWithThreeAttributes) .Should() .HaveAnyAttributes(helper.Attribute1) .AssertNoViolations(helper); Types() .That() - .Are(helper.ClassWithAttributes, helper.ClassWithoutAttributes) + .Are(helper.ClassWithTwoAttributes, helper.ClassWithoutAttributes) .Should() .HaveAnyAttributes(helper.Attribute1) .AssertAnyViolations(helper); @@ -779,11 +779,11 @@ public async Task HaveAnyAttributesThatTest() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations"); - var should = Types().That().Are(helper.ClassWithAttributes).Should(); + var should = Types().That().Are(helper.ClassWithTwoAttributes).Should(); should.HaveAnyAttributesThat().Are(helper.Attribute1).AssertNoViolations(helper); helper.AddSnapshotHeader("Violations"); - should = Types().That().Are(helper.ClassWithAttributes).Should(); + should = Types().That().Are(helper.ClassWithTwoAttributes).Should(); should.HaveAnyAttributesThat().Are(helper.UnusedAttribute).AssertOnlyViolations(helper); await helper.AssertSnapshotMatches(); } @@ -793,85 +793,91 @@ public async Task HaveAnyAttributesWithArgumentsTest() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations with type arguments"); - var should = Types().That().Are(helper.ClassWithArguments).Should(); + var should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .HaveAnyAttributesWithArguments(helper.Attribute1Parameter3Value) + .HaveAnyAttributesWithArguments(helper.Attribute1StringArgument) .AssertNoViolations(helper); should - .HaveAnyAttributesWithArguments([helper.Attribute1Parameter3Value]) + .HaveAnyAttributesWithArguments([helper.Attribute1StringArgument]) .AssertNoViolations(helper); helper.AddSnapshotHeader("No violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .HaveAnyAttributesWithArguments(helper.Attribute1Parameter1Value) + .HaveAnyAttributesWithArguments(helper.Attribute1IntegerArgument) .AssertNoViolations(helper); should - .HaveAnyAttributesWithArguments([helper.Attribute1Parameter1Value]) + .HaveAnyAttributesWithArguments([helper.Attribute1IntegerArgument]) .AssertNoViolations(helper); helper.AddSnapshotHeader("Violations with type arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .HaveAnyAttributesWithArguments(helper.UnusedTypeParameterValue) + .HaveAnyAttributesWithArguments(helper.UnusedTypeArgument) .AssertOnlyViolations(helper); should - .HaveAnyAttributesWithArguments([helper.UnusedTypeParameterValue]) + .HaveAnyAttributesWithArguments([helper.UnusedTypeArgument]) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Violations with value arguments"); should = Types().That().Are(helper.ClassWithoutAttributes).Should(); should - .HaveAnyAttributesWithArguments(helper.Attribute1Parameter2Value) + .HaveAnyAttributesWithArguments(helper.Attribute1IntegerArgument) .AssertOnlyViolations(helper); should - .HaveAnyAttributesWithArguments([helper.Attribute1Parameter2Value]) + .HaveAnyAttributesWithArguments([helper.Attribute1IntegerArgument]) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Null argument"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should.HaveAnyAttributesWithArguments(null).AssertOnlyViolations(helper); helper.AddSnapshotHeader("Empty arguments"); Types() .That() - .Are(helper.ClassWithArguments) + .Are(helper.ClassWithSingleAttributeWithArguments) .Should() .HaveAnyAttributesWithArguments([]) .AssertNoViolations(helper); Types() .That() - .Are(helper.ClassWithAttributes) + .Are(helper.ClassWithTwoAttributesWithArguments) .Should() .HaveAnyAttributesWithArguments([]) .AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should .HaveAnyAttributesWithArguments( - [helper.Attribute1Parameter3InvalidValue, helper.UnusedParameterValue] + [helper.UnusedAttributeIntValue, helper.UnusedAttributeStringValue] ) .AssertOnlyViolations(helper); should .HaveAnyAttributesWithArguments( - helper.Attribute1Parameter3InvalidValue, - helper.UnusedParameterValue + helper.UnusedAttributeIntValue, + helper.UnusedAttributeStringValue ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple inputs"); Types() .That() - .Are(helper.ClassWithArguments, helper.OtherClassWithArguments) + .Are( + helper.ClassWithSingleAttributeWithArguments, + helper.ClassWithTwoAttributesWithArguments + ) .Should() - .HaveAnyAttributesWithArguments(helper.Attribute1Parameter1Value) + .HaveAnyAttributesWithArguments(helper.Attribute1StringArgument) .AssertNoViolations(helper); Types() .That() - .Are(helper.ClassWithArguments, helper.ClassWithAttributes) + .Are( + helper.ClassWithSingleAttributeWithArguments, + helper.ClassWithTwoAttributesWithArguments + ) .Should() - .HaveAnyAttributesWithArguments(helper.Attribute1Parameter2Value) + .HaveAnyAttributesWithArguments(helper.Attribute2IntegerArgument) .AssertAnyViolations(helper); await helper.AssertSnapshotMatches(); } @@ -881,92 +887,117 @@ public async Task HaveAnyAttributesWithNamedArguments() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations with type arguments"); - var should = Types().That().Are(helper.ClassWithArguments).Should(); + var should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should - .HaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter1Pair) + .HaveAnyAttributesWithNamedArguments( + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) + ) .AssertNoViolations(helper); should - .HaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter1Pair]) + .HaveAnyAttributesWithNamedArguments( + [("NamedParameter1", helper.Attribute1TypeArgumentSystemType)] + ) .AssertNoViolations(helper); helper.AddSnapshotHeader("No violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should - .HaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter2Pair) + .HaveAnyAttributesWithNamedArguments( + ("NamedParameter2", helper.Attribute1StringArgument) + ) .AssertNoViolations(helper); should - .HaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter2Pair]) + .HaveAnyAttributesWithNamedArguments( + [("NamedParameter2", helper.Attribute1StringArgument)] + ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Violations with type arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should - .HaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter1InvalidNamePair) + .HaveAnyAttributesWithNamedArguments(("InvalidName", helper.Attribute1TypeArgument)) .AssertOnlyViolations(helper); should - .HaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter1InvalidNamePair]) + .HaveAnyAttributesWithNamedArguments([("InvalidName", helper.Attribute1TypeArgument)]) .AssertOnlyViolations(helper); should - .HaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter1InvalidValuePair) + .HaveAnyAttributesWithNamedArguments(("NamedParameter1", helper.UnusedTypeArgument)) .AssertOnlyViolations(helper); should - .HaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter1InvalidValuePair]) + .HaveAnyAttributesWithNamedArguments([("NamedParameter1", helper.UnusedTypeArgument)]) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should - .HaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter2InvalidNamePair) + .HaveAnyAttributesWithNamedArguments(("InvalidName", helper.Attribute1StringArgument)) .AssertOnlyViolations(helper); should - .HaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter2InvalidNamePair]) + .HaveAnyAttributesWithNamedArguments([("InvalidName", helper.Attribute1StringArgument)]) .AssertOnlyViolations(helper); should - .HaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter2InvalidValuePair) + .HaveAnyAttributesWithNamedArguments( + ("NamedParameter2", helper.UnusedAttributeStringValue) + ) .AssertOnlyViolations(helper); should - .HaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter2InvalidValuePair]) + .HaveAnyAttributesWithNamedArguments( + [("NamedParameter2", helper.UnusedAttributeStringValue)] + ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Empty arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should.HaveAnyAttributesWithNamedArguments([]).AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .HaveAnyAttributesWithNamedArguments( - helper.Attribute1NamedParameter1Pair, - helper.Attribute1NamedParameter2Pair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType), + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertNoViolations(helper); should .HaveAnyAttributesWithNamedArguments( - [helper.Attribute1NamedParameter1Pair, helper.Attribute1NamedParameter2Pair] + [ + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType), + ("NamedParameter2", helper.Attribute1StringArgument), + ] ) .AssertNoViolations(helper); should .HaveAnyAttributesWithNamedArguments( - helper.Attribute1NamedParameter1Pair, - helper.Attribute1NamedParameter2InvalidValuePair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType), + ("NamedParameter2", helper.UnusedAttributeStringValue) ) .AssertOnlyViolations(helper); should .HaveAnyAttributesWithNamedArguments( [ - helper.Attribute1NamedParameter1Pair, - helper.Attribute1NamedParameter2InvalidValuePair, + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType), + ("NamedParameter2", helper.UnusedAttributeStringValue), ] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple inputs"); - should = Types().That().Are(helper.ClassWithArguments, helper.ClassWithAttributes).Should(); + should = Types() + .That() + .Are( + helper.ClassWithSingleAttributeWithNamedArguments, + helper.ClassWithTwoAttributesWithNamedArguments + ) + .Should(); should - .HaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter1Pair) - .AssertAnyViolations(helper); + .HaveAnyAttributesWithNamedArguments( + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) + ) + .AssertNoViolations(helper); should - .HaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter1Pair]) + .HaveAnyAttributesWithNamedArguments( + [("NamedParameter3", helper.Attribute2TypeArgumentSystemType)] + ) .AssertAnyViolations(helper); await helper.AssertSnapshotMatches(); @@ -977,110 +1008,104 @@ public async Task HaveAttributeWithArgumentsTest() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations with type arguments"); - var should = Types().That().Are(helper.ClassWithArguments).Should(); + var should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute1Parameter3Value) + .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute1TypeArgumentSystemType) .AssertNoViolations(helper); should - .HaveAttributeWithArguments(helper.Attribute1, [helper.Attribute1Parameter3Value]) + .HaveAttributeWithArguments( + helper.Attribute1, + [helper.Attribute1TypeArgumentSystemType] + ) .AssertNoViolations(helper); should .HaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute1Parameter3Value + helper.Attribute1TypeArgumentSystemType ) .AssertNoViolations(helper); should .HaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute1Parameter3Value] + [helper.Attribute1TypeArgumentSystemType] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("No violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute1Parameter1Value) + .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute1StringArgument) .AssertNoViolations(helper); should - .HaveAttributeWithArguments(helper.Attribute1, [helper.Attribute1Parameter1Value]) + .HaveAttributeWithArguments(helper.Attribute1, [helper.Attribute1StringArgument]) .AssertNoViolations(helper); should .HaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute1Parameter1Value + helper.Attribute1StringArgument ) .AssertNoViolations(helper); should .HaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute1Parameter1Value] + [helper.Attribute1StringArgument] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Violations with type arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute1Parameter3InvalidValue) + .HaveAttributeWithArguments(helper.Attribute1, helper.UnusedTypeArgument) .AssertOnlyViolations(helper); should - .HaveAttributeWithArguments( - helper.Attribute1, - [helper.Attribute1Parameter3InvalidValue] - ) + .HaveAttributeWithArguments(helper.Attribute1, [helper.UnusedTypeArgument]) .AssertOnlyViolations(helper); should - .HaveAttributeWithArguments( - helper.Attribute1SystemType, - helper.Attribute1Parameter3InvalidValue - ) + .HaveAttributeWithArguments(helper.Attribute1SystemType, helper.UnusedTypeArgument) .AssertOnlyViolations(helper); should - .HaveAttributeWithArguments( - helper.Attribute1SystemType, - [helper.Attribute1Parameter3InvalidValue] - ) + .HaveAttributeWithArguments(helper.Attribute1SystemType, [helper.UnusedTypeArgument]) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute2Parameter2Value) + .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute2StringArgument) .AssertOnlyViolations(helper); should - .HaveAttributeWithArguments(helper.Attribute1, [helper.Attribute2Parameter2Value]) + .HaveAttributeWithArguments(helper.Attribute1, [helper.Attribute2StringArgument]) .AssertOnlyViolations(helper); should .HaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute2Parameter2Value + helper.Attribute2StringArgument ) .AssertOnlyViolations(helper); should .HaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute2Parameter2Value] + [helper.Attribute2StringArgument] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Type outside of architecture"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should .HaveAttributeWithArguments( typeof(TypeDependencyNamespace.BaseClass), - helper.Attribute1Parameter1Value + helper.Attribute1StringArgument ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Null argument"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should.HaveAttributeWithArguments(helper.Attribute1, null).AssertOnlyViolations(helper); should .HaveAttributeWithArguments(helper.Attribute1SystemType, null) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Empty arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should .HaveAttributeWithArguments(helper.Attribute1, new List()) .AssertNoViolations(helper); @@ -1089,46 +1114,52 @@ public async Task HaveAttributeWithArgumentsTest() .AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should .HaveAttributeWithArguments( helper.Attribute1, - helper.Attribute1Parameter1Value, - helper.Attribute1Parameter2Value + helper.Attribute1StringArgument, + helper.Attribute1IntegerArgument ) .AssertNoViolations(helper); should .HaveAttributeWithArguments( helper.Attribute1, - [helper.Attribute1Parameter1Value, helper.Attribute1Parameter2Value] + [helper.Attribute1StringArgument, helper.Attribute1IntegerArgument] ) .AssertNoViolations(helper); should .HaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute1Parameter1Value, - helper.Attribute1Parameter2Value + helper.Attribute1StringArgument, + helper.Attribute1IntegerArgument ) .AssertNoViolations(helper); should .HaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute1Parameter1Value, helper.Attribute1Parameter2Value] + [helper.Attribute1StringArgument, helper.Attribute1IntegerArgument] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple inputs"); Types() .That() - .Are(helper.ClassWithArguments, helper.OtherClassWithArguments) + .Are( + helper.ClassWithSingleAttributeWithArguments, + helper.ClassWithTwoAttributesWithArguments + ) .Should() - .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute1Parameter1Value) + .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute1StringArgument) .AssertNoViolations(helper); Types() .That() - .Are(helper.ClassWithArguments, helper.ClassWithAttributes) + .Are( + helper.ClassWithSingleAttributeWithArguments, + helper.ClassWithTwoAttributesWithArguments + ) .Should() - .HaveAttributeWithArguments(helper.Attribute1, helper.Attribute1Parameter2Value) + .HaveAttributeWithArguments(helper.Attribute2, helper.Attribute2IntegerArgument) .AssertAnyViolations(helper); await helper.AssertSnapshotMatches(); } @@ -1138,257 +1169,233 @@ public async Task HaveAttributeWithNamedArguments() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations with type arguments"); - var should = Types().That().Are(helper.ClassWithArguments).Should(); + var should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .HaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) ) .AssertNoViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgumentSystemType)] ) .AssertNoViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) ) .AssertNoViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgumentSystemType)] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("No violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .HaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter2Pair + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertNoViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter2Pair] + [("NamedParameter2", helper.Attribute1StringArgument)] ) .AssertNoViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute1NamedParameter2Pair + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertNoViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute1NamedParameter2Pair] + [("NamedParameter2", helper.Attribute1StringArgument)] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Violations with type arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .HaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter1InvalidNamePair + ("InvalidName", helper.Attribute1TypeArgument) ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter1InvalidNamePair] - ) - .AssertOnlyViolations(helper); - should - .HaveAttributeWithNamedArguments( - helper.Attribute1SystemType, - helper.Attribute1NamedParameter1InvalidNamePair - ) - .AssertOnlyViolations(helper); - should - .HaveAttributeWithNamedArguments( - helper.Attribute1SystemType, - [helper.Attribute1NamedParameter1InvalidNamePair] + [("InvalidName", helper.Attribute1TypeArgument)] ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter1InvalidValuePair + ("NamedParameter1", helper.UnusedTypeArgument) ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter1InvalidValuePair] + [("NamedParameter1", helper.UnusedTypeArgument)] ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute1NamedParameter1InvalidValuePair + ("NamedParameter1", helper.UnusedTypeArgument) ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute1NamedParameter1InvalidValuePair] + [("NamedParameter1", helper.UnusedTypeArgument)] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .HaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter2InvalidNamePair + ("InvalidName", helper.Attribute1StringArgument) ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter2InvalidNamePair] - ) - .AssertOnlyViolations(helper); - should - .HaveAttributeWithNamedArguments( - helper.Attribute1SystemType, - helper.Attribute1NamedParameter2InvalidNamePair - ) - .AssertOnlyViolations(helper); - should - .HaveAttributeWithNamedArguments( - helper.Attribute1SystemType, - [helper.Attribute1NamedParameter2InvalidNamePair] + [("InvalidName", helper.Attribute1StringArgument)] ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter2InvalidValuePair + ("NamedParameter2", helper.UnusedAttributeStringValue) ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter2InvalidValuePair] - ) - .AssertOnlyViolations(helper); - should - .HaveAttributeWithNamedArguments( - helper.Attribute1SystemType, - helper.Attribute1NamedParameter2InvalidValuePair - ) - .AssertOnlyViolations(helper); - should - .HaveAttributeWithNamedArguments( - helper.Attribute1SystemType, - [helper.Attribute1NamedParameter2InvalidValuePair] + [("NamedParameter2", helper.UnusedAttributeStringValue)] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Unused attribute"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .HaveAttributeWithNamedArguments( helper.UnusedAttribute, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgument) ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.UnusedAttribute, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgument)] ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.UnusedAttributeSystemType, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgument) ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.UnusedAttributeSystemType, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgument)] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Type outside of architecture"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .HaveAttributeWithNamedArguments( typeof(TypeDependencyNamespace.BaseClass), - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgument) ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Emtpy arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should.HaveAttributeWithNamedArguments(helper.Attribute1, []).AssertNoViolations(helper); should .HaveAttributeWithNamedArguments(helper.Attribute1SystemType, []) .AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .HaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter1Pair, - helper.Attribute2NamedParameter2Pair + ("NamedParameter1", helper.Attribute1TypeArgument), + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter1Pair, helper.Attribute2NamedParameter2Pair] + [ + ("NamedParameter1", helper.Attribute1TypeArgument), + ("NamedParameter2", helper.Attribute1StringArgument), + ] ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute1NamedParameter1Pair, - helper.Attribute2NamedParameter2Pair + ("NamedParameter1", helper.Attribute1TypeArgument), + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertOnlyViolations(helper); should .HaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute1NamedParameter1Pair, helper.Attribute2NamedParameter2Pair] + [ + ("NamedParameter1", helper.Attribute1TypeArgument), + ("NamedParameter2", helper.Attribute1StringArgument), + ] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple inputs"); - should = Types().That().Are(helper.ClassWithArguments, helper.ClassWithAttributes).Should(); + should = Types() + .That() + .Are( + helper.ClassWithSingleAttributeWithNamedArguments, + helper.ClassWithTwoAttributesWithNamedArguments + ) + .Should(); should .HaveAttributeWithNamedArguments( - helper.Attribute1, - helper.Attribute1NamedParameter1Pair + helper.Attribute2, + ("NamedParameter3", helper.Attribute2TypeArgumentSystemType) ) .AssertAnyViolations(helper); should .HaveAttributeWithNamedArguments( - helper.Attribute1, - [helper.Attribute1NamedParameter1Pair] + helper.Attribute2, + [("NamedParameter3", helper.Attribute2TypeArgumentSystemType)] ) .AssertAnyViolations(helper); should .HaveAttributeWithNamedArguments( - helper.Attribute1SystemType, - helper.Attribute1NamedParameter1Pair + helper.Attribute2SystemType, + ("NamedParameter3", helper.Attribute2TypeArgumentSystemType) ) .AssertAnyViolations(helper); should .HaveAttributeWithNamedArguments( - helper.Attribute1SystemType, - [helper.Attribute1NamedParameter1Pair] + helper.Attribute2SystemType, + [("NamedParameter3", helper.Attribute2TypeArgumentSystemType)] ) .AssertAnyViolations(helper); await helper.AssertSnapshotMatches(); @@ -1667,7 +1674,7 @@ public async Task NotHaveAnyAttributesTest() .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Type outside of architecture"); - should = Types().That().Are(helper.ClassWithAttributes).Should(); + should = Types().That().Are(helper.ClassWithTwoAttributes).Should(); should .NotHaveAnyAttributes(typeof(TypeDependencyNamespace.BaseClass)) .AssertException(helper); @@ -1694,7 +1701,7 @@ public async Task NotHaveAnyAttributesTest() .AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithAttributes).Should(); + should = Types().That().Are(helper.ClassWithTwoAttributes).Should(); should .NotHaveAnyAttributes(helper.Attribute1, helper.Attribute2) .AssertOnlyViolations(helper); @@ -1714,13 +1721,13 @@ public async Task NotHaveAnyAttributesTest() helper.AddSnapshotHeader("Multiple inputs"); Types() .That() - .Are(helper.ClassWithoutAttributes, helper.OtherClassWithoutAttributes) + .Are(helper.ClassWithoutAttributes, helper.ClassWithSingleAttribute) .Should() .NotHaveAnyAttributes(helper.Attribute2) .AssertNoViolations(helper); Types() .That() - .Are(helper.ClassWithoutAttributes, helper.OtherClassWithAttributes) + .Are(helper.ClassWithoutAttributes, helper.ClassWithSingleAttribute) .Should() .NotHaveAnyAttributes(helper.Attribute1) .AssertAnyViolations(helper); @@ -1746,77 +1753,83 @@ public async Task NotHaveAnyAttributesWithArgumentsTest() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations with type arguments"); - var should = Types().That().Are(helper.ClassWithArguments).Should(); + var should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .NotHaveAnyAttributesWithArguments(helper.UnusedTypeParameterValue) + .NotHaveAnyAttributesWithArguments(helper.UnusedTypeArgument) .AssertNoViolations(helper); should - .NotHaveAnyAttributesWithArguments([helper.UnusedTypeParameterValue]) + .NotHaveAnyAttributesWithArguments([helper.UnusedTypeArgument]) .AssertNoViolations(helper); helper.AddSnapshotHeader("No violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .NotHaveAnyAttributesWithArguments(helper.UnusedParameterValue) + .NotHaveAnyAttributesWithArguments(helper.UnusedAttributeStringValue) .AssertNoViolations(helper); should - .NotHaveAnyAttributesWithArguments([helper.UnusedParameterValue]) + .NotHaveAnyAttributesWithArguments([helper.UnusedAttributeStringValue]) .AssertNoViolations(helper); helper.AddSnapshotHeader("Violations with type arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .NotHaveAnyAttributesWithArguments(helper.Attribute1Parameter3Value) + .NotHaveAnyAttributesWithArguments(helper.Attribute1TypeArgumentSystemType) .AssertOnlyViolations(helper); should - .NotHaveAnyAttributesWithArguments([helper.Attribute1Parameter3Value]) + .NotHaveAnyAttributesWithArguments([helper.Attribute1TypeArgumentSystemType]) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .NotHaveAnyAttributesWithArguments(helper.Attribute1Parameter2Value) + .NotHaveAnyAttributesWithArguments(helper.Attribute1IntegerArgument) .AssertOnlyViolations(helper); should - .NotHaveAnyAttributesWithArguments([helper.Attribute1Parameter2Value]) + .NotHaveAnyAttributesWithArguments([helper.Attribute1IntegerArgument]) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Type without attributes"); should = Types().That().Are(helper.ClassWithoutAttributes).Should(); should - .NotHaveAnyAttributesWithArguments(helper.Attribute1Parameter1Value) + .NotHaveAnyAttributesWithArguments(helper.Attribute1StringArgument) .AssertNoViolations(helper); helper.AddSnapshotHeader("Null argument"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should.NotHaveAnyAttributesWithArguments(null).AssertNoViolations(helper); helper.AddSnapshotHeader("Empty arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should.NotHaveAnyAttributesWithArguments([]).AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should .NotHaveAnyAttributesWithArguments( - [helper.UnusedTypeParameterValue, helper.Attribute1Parameter1Value] + [helper.UnusedTypeArgument, helper.Attribute1StringArgument] ) .AssertOnlyViolations(helper); should .NotHaveAnyAttributesWithArguments( - helper.UnusedTypeParameterValue, - helper.Attribute1Parameter1Value + helper.UnusedTypeArgument, + helper.Attribute1StringArgument ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple inputs"); - should = Types().That().Are(helper.ClassWithArguments, helper.ClassWithAttributes).Should(); + should = Types() + .That() + .Are( + helper.ClassWithSingleAttributeWithArguments, + helper.ClassWithTwoAttributesWithArguments + ) + .Should(); should - .NotHaveAnyAttributesWithArguments(helper.Attribute1Parameter1Value) - .AssertAnyViolations(helper); + .NotHaveAnyAttributesWithArguments(helper.Attribute1StringArgument) + .AssertOnlyViolations(helper); should - .NotHaveAnyAttributesWithArguments([helper.Attribute1Parameter1Value]) - .AssertAnyViolations(helper); + .NotHaveAnyAttributesWithArguments([helper.Attribute1StringArgument]) + .AssertOnlyViolations(helper); await helper.AssertSnapshotMatches(); } @@ -1825,91 +1838,112 @@ public async Task NotHaveAnyAttributesWithNamedArgumentsTest() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations with type arguments"); - var should = Types().That().Are(helper.ClassWithArguments).Should(); + var should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should - .NotHaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter1InvalidNamePair) + .NotHaveAnyAttributesWithNamedArguments(("InvalidName", helper.Attribute1TypeArgument)) .AssertNoViolations(helper); should .NotHaveAnyAttributesWithNamedArguments( - [helper.Attribute1NamedParameter1InvalidNamePair] + [("InvalidName", helper.Attribute1TypeArgument)] ) .AssertNoViolations(helper); should - .NotHaveAnyAttributesWithNamedArguments( - helper.Attribute1NamedParameter1InvalidValuePair - ) + .NotHaveAnyAttributesWithNamedArguments(("NamedParameter1", helper.UnusedTypeArgument)) .AssertNoViolations(helper); should .NotHaveAnyAttributesWithNamedArguments( - [helper.Attribute1NamedParameter1InvalidValuePair] + [("NamedParameter1", helper.UnusedTypeArgument)] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("No violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should - .NotHaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter2InvalidNamePair) + .NotHaveAnyAttributesWithNamedArguments( + ("InvalidName", helper.Attribute1StringArgument) + ) .AssertNoViolations(helper); should .NotHaveAnyAttributesWithNamedArguments( - [helper.Attribute1NamedParameter2InvalidNamePair] + [("InvalidName", helper.Attribute1StringArgument)] ) .AssertNoViolations(helper); should .NotHaveAnyAttributesWithNamedArguments( - helper.Attribute1NamedParameter2InvalidValuePair + ("NamedParameter2", helper.UnusedAttributeStringValue) ) .AssertNoViolations(helper); should .NotHaveAnyAttributesWithNamedArguments( - [helper.Attribute1NamedParameter2InvalidValuePair] + [("NamedParameter2", helper.UnusedAttributeStringValue)] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Violations with type arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should - .NotHaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter1Pair) + .NotHaveAnyAttributesWithNamedArguments( + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) + ) .AssertOnlyViolations(helper); should - .NotHaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter1Pair]) + .NotHaveAnyAttributesWithNamedArguments( + [("NamedParameter1", helper.Attribute1TypeArgumentSystemType)] + ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should - .NotHaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter2Pair) + .NotHaveAnyAttributesWithNamedArguments( + ("NamedParameter2", helper.Attribute1StringArgument) + ) .AssertOnlyViolations(helper); should - .NotHaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter2Pair]) + .NotHaveAnyAttributesWithNamedArguments( + [("NamedParameter2", helper.Attribute1StringArgument)] + ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Empty arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should.NotHaveAnyAttributesWithNamedArguments([]).AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .NotHaveAnyAttributesWithNamedArguments( - [helper.Attribute1NamedParameter1Pair, helper.Attribute1NamedParameter2Pair] + ("NamedParameter1", helper.Attribute1TypeArgument), + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertOnlyViolations(helper); should .NotHaveAnyAttributesWithNamedArguments( - helper.Attribute1NamedParameter1Pair, - helper.Attribute1NamedParameter2Pair + [ + ("NamedParameter1", helper.Attribute1TypeArgument), + ("NamedParameter2", helper.Attribute1StringArgument), + ] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple inputs"); - should = Types().That().Are(helper.ClassWithArguments, helper.ClassWithAttributes).Should(); + should = Types() + .That() + .Are( + helper.ClassWithSingleAttributeWithNamedArguments, + helper.ClassWithTwoAttributesWithNamedArguments + ) + .Should(); should - .NotHaveAnyAttributesWithNamedArguments(helper.Attribute1NamedParameter1Pair) - .AssertAnyViolations(helper); + .NotHaveAnyAttributesWithNamedArguments( + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) + ) + .AssertOnlyViolations(helper); should - .NotHaveAnyAttributesWithNamedArguments([helper.Attribute1NamedParameter1Pair]) - .AssertAnyViolations(helper); + .NotHaveAnyAttributesWithNamedArguments( + [("NamedParameter1", helper.Attribute1TypeArgumentSystemType)] + ) + .AssertOnlyViolations(helper); await helper.AssertSnapshotMatches(); } @@ -1918,121 +1952,121 @@ public async Task NotHaveAttributeWithArgumentsTest() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations with type arguments"); - var should = Types().That().Are(helper.ClassWithArguments).Should(); + var should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute2Parameter1Value) + .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute2TypeArgument) .AssertNoViolations(helper); should - .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute2Parameter1Value]) + .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute2TypeArgument]) .AssertNoViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute2Parameter1Value + helper.Attribute2TypeArgument ) .AssertNoViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute2Parameter1Value] + [helper.Attribute2TypeArgument] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("No violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute2Parameter1Value) + .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute2StringArgument) .AssertNoViolations(helper); should - .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute2Parameter1Value]) + .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute2StringArgument]) .AssertNoViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute2Parameter1Value + helper.Attribute2StringArgument ) .AssertNoViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute2Parameter1Value] + [helper.Attribute2StringArgument] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Violations with type arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute1Parameter1Value) + .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute1StringArgument) .AssertOnlyViolations(helper); should - .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute1Parameter1Value]) + .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute1StringArgument]) .AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute1Parameter1Value + helper.Attribute1StringArgument ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute1Parameter1Value] + [helper.Attribute1StringArgument] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute1Parameter2Value) + .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute1IntegerArgument) .AssertOnlyViolations(helper); should - .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute1Parameter2Value]) + .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute1IntegerArgument]) .AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute1Parameter2Value + helper.Attribute1IntegerArgument ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute1Parameter2Value] + [helper.Attribute1IntegerArgument] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Unused attribute"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should - .NotHaveAttributeWithArguments(helper.UnusedAttribute, helper.Attribute1Parameter1Value) + .NotHaveAttributeWithArguments(helper.UnusedAttribute, helper.Attribute1StringArgument) .AssertNoViolations(helper); should .NotHaveAttributeWithArguments( helper.UnusedAttribute, - [helper.Attribute1Parameter1Value] + [helper.Attribute1StringArgument] ) .AssertNoViolations(helper); should .NotHaveAttributeWithArguments( helper.UnusedAttributeSystemType, - helper.Attribute1Parameter1Value + helper.Attribute1StringArgument ) .AssertNoViolations(helper); should .NotHaveAttributeWithArguments( helper.UnusedAttributeSystemType, - [helper.Attribute1Parameter1Value] + [helper.Attribute1StringArgument] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Type outside of architecture"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should .NotHaveAttributeWithArguments(typeof(TypeDependencyNamespace.BaseClass), 1) .AssertNoViolations(helper); helper.AddSnapshotHeader("Null argument"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should .NotHaveAttributeWithArguments(helper.UnusedAttribute, null) .AssertNoViolations(helper); @@ -2041,61 +2075,67 @@ public async Task NotHaveAttributeWithArgumentsTest() .AssertNoViolations(helper); helper.AddSnapshotHeader("Empty arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should.NotHaveAttributeWithArguments(helper.Attribute1, []).AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments(helper.Attribute1SystemType, []) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithArguments).Should(); should .NotHaveAttributeWithArguments( helper.Attribute1, - helper.Attribute1Parameter3Value, - helper.Attribute1Parameter2Value + helper.Attribute1TypeArgumentSystemType, + helper.Attribute1IntegerArgument ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1, - [helper.Attribute1Parameter3Value, helper.Attribute1Parameter2Value] + [helper.Attribute1TypeArgumentSystemType, helper.Attribute1IntegerArgument] ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute1Parameter3Value, - helper.Attribute1Parameter2Value + helper.Attribute1TypeArgumentSystemType, + helper.Attribute1IntegerArgument ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute1Parameter3Value, helper.Attribute1Parameter2Value] + [helper.Attribute1TypeArgumentSystemType, helper.Attribute1IntegerArgument] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple inputs"); - should = Types().That().Are(helper.ClassWithArguments, helper.ClassWithAttributes).Should(); + should = Types() + .That() + .Are( + helper.ClassWithSingleAttributeWithArguments, + helper.ClassWithTwoAttributesWithNamedArguments + ) + .Should(); should - .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute1Parameter1Value) - .AssertAnyViolations(helper); + .NotHaveAttributeWithArguments(helper.Attribute1, helper.Attribute1StringArgument) + .AssertOnlyViolations(helper); should - .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute1Parameter1Value]) - .AssertAnyViolations(helper); + .NotHaveAttributeWithArguments(helper.Attribute1, [helper.Attribute1StringArgument]) + .AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - helper.Attribute1Parameter1Value + helper.Attribute1StringArgument ) - .AssertAnyViolations(helper); + .AssertOnlyViolations(helper); should .NotHaveAttributeWithArguments( helper.Attribute1SystemType, - [helper.Attribute1Parameter1Value] + [helper.Attribute1StringArgument] ) - .AssertAnyViolations(helper); + .AssertOnlyViolations(helper); await helper.AssertSnapshotMatches(); } @@ -2105,151 +2145,151 @@ public async Task NotHaveAttributeWithNamedArgumentsTest() { var helper = new AttributeAssemblyTestHelpers(); helper.AddSnapshotHeader("No violations with type arguments"); - var should = Types().That().Are(helper.ClassWithArguments).Should(); + var should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute2NamedParameter1Pair + ("NamedParameter1", helper.Attribute2TypeArgument) ) .AssertNoViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute2NamedParameter1Pair] + [("NamedParameter1", helper.Attribute2TypeArgument)] ) .AssertNoViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute2NamedParameter1Pair + ("NamedParameter1", helper.Attribute2TypeArgument) ) .AssertNoViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute2NamedParameter1Pair] + [("NamedParameter1", helper.Attribute2TypeArgument)] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("No violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute2NamedParameter1Pair + ("NamedParameter2", helper.Attribute2StringArgument) ) .AssertNoViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute2NamedParameter1Pair] + [("NamedParameter2", helper.Attribute2StringArgument)] ) .AssertNoViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute2NamedParameter1Pair + ("NamedParameter2", helper.Attribute2StringArgument) ) .AssertNoViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute2NamedParameter1Pair] + [("NamedParameter2", helper.Attribute2StringArgument)] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Violations with type arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgumentSystemType)] ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgumentSystemType)] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Violations with value arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter2Pair + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter2Pair] + [("NamedParameter2", helper.Attribute1StringArgument)] ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute1NamedParameter2Pair + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute1NamedParameter2Pair] + [("NamedParameter2", helper.Attribute1StringArgument)] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Unused attribute"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .NotHaveAttributeWithNamedArguments( helper.UnusedAttribute, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgument) ) .AssertNoViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.UnusedAttribute, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgument)] ) .AssertNoViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.UnusedAttributeSystemType, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgument) ) .AssertNoViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.UnusedAttributeSystemType, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgument)] ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Type outside of architecture"); - should = Types().That().Are(helper.ClassWithAttributes).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .NotHaveAttributeWithNamedArguments( typeof(TypeDependencyNamespace.BaseClass), - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgument) ) .AssertNoViolations(helper); helper.AddSnapshotHeader("Empty arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .NotHaveAttributeWithNamedArguments(helper.Attribute1, []) .AssertOnlyViolations(helper); @@ -2258,60 +2298,72 @@ public async Task NotHaveAttributeWithNamedArgumentsTest() .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithArguments).Should(); + should = Types().That().Are(helper.ClassWithSingleAttributeWithNamedArguments).Should(); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter1Pair, - helper.Attribute1NamedParameter2Pair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType), + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter1Pair, helper.Attribute1NamedParameter2Pair] + [ + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType), + ("NamedParameter2", helper.Attribute1StringArgument), + ] ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute1NamedParameter1Pair, - helper.Attribute1NamedParameter2Pair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType), + ("NamedParameter2", helper.Attribute1StringArgument) ) .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute1NamedParameter1Pair, helper.Attribute1NamedParameter2Pair] + [ + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType), + ("NamedParameter2", helper.Attribute1StringArgument), + ] ) .AssertOnlyViolations(helper); helper.AddSnapshotHeader("Multiple inputs"); - should = Types().That().Are(helper.ClassWithArguments, helper.ClassWithAttributes).Should(); + should = Types() + .That() + .Are( + helper.ClassWithSingleAttributeWithNamedArguments, + helper.ClassWithTwoAttributesWithNamedArguments + ) + .Should(); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) ) - .AssertAnyViolations(helper); + .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgumentSystemType)] ) - .AssertAnyViolations(helper); + .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - helper.Attribute1NamedParameter1Pair + ("NamedParameter1", helper.Attribute1TypeArgumentSystemType) ) - .AssertAnyViolations(helper); + .AssertOnlyViolations(helper); should .NotHaveAttributeWithNamedArguments( helper.Attribute1SystemType, - [helper.Attribute1NamedParameter1Pair] + [("NamedParameter1", helper.Attribute1TypeArgumentSystemType)] ) - .AssertAnyViolations(helper); + .AssertOnlyViolations(helper); await helper.AssertSnapshotMatches(); } @@ -2330,7 +2382,7 @@ public async Task NotHaveNameTest() should.NotHaveNameContaining(helper.BaseClass.Namespace.Name).AssertNoViolations(helper); should.NotHaveFullNameContaining(helper.NonExistentObjectName).AssertNoViolations(helper); should.NotHaveNameStartingWith(helper.BaseClass.Namespace.Name).AssertNoViolations(helper); - should.NotHaveNameEndingWith("Base").AssertNoViolations(helper); + should.NotHaveNameEndingWith("Test").AssertNoViolations(helper); helper.AddSnapshotHeader("Violations"); should = Types().That().Are(helper.BaseClass).Should(); @@ -2338,12 +2390,12 @@ public async Task NotHaveNameTest() should.NotHaveNameMatching("^Base.*$").AssertOnlyViolations(helper); should.NotHaveFullName(helper.BaseClass.FullName).AssertOnlyViolations(helper); should.NotHaveFullNameMatching("^.*\\.Base.*$").AssertOnlyViolations(helper); - should.NotHaveNameContaining("Base").AssertOnlyViolations(helper); + should.NotHaveNameContaining(helper.BaseClass.Name).AssertOnlyViolations(helper); should .NotHaveFullNameContaining(helper.BaseClass.Namespace.Name) .AssertOnlyViolations(helper); - should.NotHaveNameStartingWith("Base").AssertOnlyViolations(helper); - should.NotHaveNameEndingWith("Class").AssertOnlyViolations(helper); + should.NotHaveNameStartingWith(helper.BaseClass.Name).AssertOnlyViolations(helper); + should.NotHaveNameEndingWith(helper.BaseClass.Name).AssertOnlyViolations(helper); await helper.AssertSnapshotMatches(); } @@ -2453,7 +2505,7 @@ public async Task OnlyHaveAttributesTest() should.OnlyHaveAttributes(new List()).AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple arguments"); - should = Types().That().Are(helper.ClassWithAttributes).Should(); + should = Types().That().Are(helper.ClassWithTwoAttributes).Should(); should.OnlyHaveAttributes(helper.Attribute1, helper.Attribute2).AssertNoViolations(helper); should .OnlyHaveAttributes([helper.Attribute1, helper.Attribute2]) @@ -2469,16 +2521,17 @@ public async Task OnlyHaveAttributesTest() .AssertNoViolations(helper); helper.AddSnapshotHeader("Multiple inputs"); - should = Types() + Types() .That() - .Are(helper.ClassWithAttributes, helper.OtherClassWithAttributes) - .Should(); - should.OnlyHaveAttributes(helper.UnusedAttribute).AssertOnlyViolations(helper); - should.OnlyHaveAttributes([helper.UnusedAttribute]).AssertOnlyViolations(helper); - should.OnlyHaveAttributes(helper.UnusedAttributeSystemType).AssertOnlyViolations(helper); - should.OnlyHaveAttributes([helper.UnusedAttributeSystemType]).AssertOnlyViolations(helper); - should - .OnlyHaveAttributes(Attributes().That().Are(helper.UnusedAttribute)) + .Are(helper.ClassWithSingleAttribute, helper.ClassWithTwoAttributes) + .Should() + .OnlyHaveAttributes(helper.Attribute1) + .AssertAnyViolations(helper); + Types() + .That() + .Are(helper.ClassWithSingleAttribute, helper.ClassWithTwoAttributes) + .Should() + .OnlyHaveAttributes(helper.Attribute2) .AssertOnlyViolations(helper); await helper.AssertSnapshotMatches(); } diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesTest.verified.txt index a76714b9..ecbd93e7 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesTest.verified.txt @@ -1,160 +1,160 @@ ===== No violations ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any Attributes that are "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any Attributes that are "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed ===== Violations ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.UnusedAttribute" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +Description: AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.UnusedAttribute"" failed: + AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.UnusedAttribute" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +Description: AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.UnusedAttribute"" failed: + AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.UnusedAttribute" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +Description: AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.UnusedAttribute"" failed: + AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.UnusedAttribute" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +Description: AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.UnusedAttribute"" failed: + AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any Attributes that are "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any Attributes that are "AttributeNamespace.UnusedAttribute" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have any Attributes that are "AttributeNamespace.UnusedAttribute" +Description: AttributeNamespace.ClassWithTwoAttributes does not have any Attributes that are "AttributeNamespace.UnusedAttribute" Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should have any Attributes that are "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does not have any Attributes that are "AttributeNamespace.UnusedAttribute" +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any Attributes that are "AttributeNamespace.UnusedAttribute"" failed: + AttributeNamespace.ClassWithTwoAttributes does not have any Attributes that are "AttributeNamespace.UnusedAttribute" ===== Empty arguments ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have one of no attributes (impossible) +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have one of no attributes (impossible) Result: False -Description: AttributeNamespace.ClassWithAttributes does not have any of no attributes (always true) +Description: AttributeNamespace.ClassWithTwoAttributes does not have any of no attributes (always true) Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should have one of no attributes (impossible)" failed: - AttributeNamespace.ClassWithAttributes does not have any of no attributes (always true) +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should have one of no attributes (impossible)" failed: + AttributeNamespace.ClassWithTwoAttributes does not have any of no attributes (always true) -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have one of no attributes (impossible) +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have one of no attributes (impossible) Result: False -Description: AttributeNamespace.ClassWithAttributes does not have any of no attributes (always true) +Description: AttributeNamespace.ClassWithTwoAttributes does not have any of no attributes (always true) Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should have one of no attributes (impossible)" failed: - AttributeNamespace.ClassWithAttributes does not have any of no attributes (always true) +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should have one of no attributes (impossible)" failed: + AttributeNamespace.ClassWithTwoAttributes does not have any of no attributes (always true) -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any Attributes that have full name "NotTheNameOfAnyObject" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any Attributes that have full name "NotTheNameOfAnyObject" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have any Attributes that have full name "NotTheNameOfAnyObject" +Description: AttributeNamespace.ClassWithTwoAttributes does not have any Attributes that have full name "NotTheNameOfAnyObject" Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should have any Attributes that have full name "NotTheNameOfAnyObject"" failed: - AttributeNamespace.ClassWithAttributes does not have any Attributes that have full name "NotTheNameOfAnyObject" +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any Attributes that have full name "NotTheNameOfAnyObject"" failed: + AttributeNamespace.ClassWithTwoAttributes does not have any Attributes that have full name "NotTheNameOfAnyObject" ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have any Attributes that are "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have any Attributes that are "AttributeNamespace.Attribute1" or "AttributeNamespace.UnusedAttribute" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should have any "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" or "AttributeNamespace.ClassWithThreeAttributes" should have any "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Result: True -Description: AttributeNamespace.OtherClassWithAttributes passed +Description: AttributeNamespace.ClassWithThreeAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.ClassWithoutAttributes" should have any "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" or "AttributeNamespace.ClassWithoutAttributes" should have any "AttributeNamespace.Attribute1" Result: False Description: AttributeNamespace.ClassWithoutAttributes does not have any "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: -"Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.ClassWithoutAttributes" should have any "AttributeNamespace.Attribute1"" failed: +"Types that are "AttributeNamespace.ClassWithTwoAttributes" or "AttributeNamespace.ClassWithoutAttributes" should have any "AttributeNamespace.Attribute1"" failed: AttributeNamespace.ClassWithoutAttributes does not have any "AttributeNamespace.Attribute1" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesThatTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesThatTest.verified.txt index e3dddfd0..142f971c 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesThatTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesThatTest.verified.txt @@ -1,19 +1,19 @@ ===== No violations ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have attributes that are "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have attributes that are "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed ===== Violations ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have attributes that are "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should have attributes that are "AttributeNamespace.UnusedAttribute" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +Description: AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should have attributes that are "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does not have any "AttributeNamespace.UnusedAttribute" +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should have attributes that are "AttributeNamespace.UnusedAttribute"" failed: + AttributeNamespace.ClassWithTwoAttributes does not have any "AttributeNamespace.UnusedAttribute" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesWithArgumentsTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesWithArgumentsTest.verified.txt index 889f00fa..e228063f 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesWithArgumentsTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesWithArgumentsTest.verified.txt @@ -1,134 +1,134 @@ ===== No violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.TypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.TypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== No violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.UnusedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.UnusedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" ===== Violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithoutAttributes" should have any attributes with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithoutAttributes" should have any attributes with arguments "1" Result: False Description: AttributeNamespace.ClassWithoutAttributes does have no attribute with an argument Message: -"Types that are "AttributeNamespace.ClassWithoutAttributes" should have any attributes with arguments "0"" failed: +"Types that are "AttributeNamespace.ClassWithoutAttributes" should have any attributes with arguments "1"" failed: AttributeNamespace.ClassWithoutAttributes does have no attribute with an argument -Query: Types that are "AttributeNamespace.ClassWithoutAttributes" should have any attributes with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithoutAttributes" should have any attributes with arguments "1" Result: False Description: AttributeNamespace.ClassWithoutAttributes does have no attribute with an argument Message: -"Types that are "AttributeNamespace.ClassWithoutAttributes" should have any attributes with arguments "0"" failed: +"Types that are "AttributeNamespace.ClassWithoutAttributes" should have any attributes with arguments "1"" failed: AttributeNamespace.ClassWithoutAttributes does have no attribute with an argument ===== Null argument ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments """ failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments """ failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" ===== Empty arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have no or any attributes with arguments (always true) +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have no or any attributes with arguments (always true) Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should have no or any attributes with arguments (always true) +Query: Types that are "AttributeNamespace.ClassWithTwoAttributesWithArguments" should have no or any attributes with arguments (always true) Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributesWithArguments passed Message: All Evaluations passed ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.OtherTypeArgument" and "UnusedValueArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "42" and "NotTheValueOfAnyAttribute" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.OtherTypeArgument" and "UnusedValueArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "42" and "NotTheValueOfAnyAttribute"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.OtherTypeArgument" and "UnusedValueArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "42" and "NotTheValueOfAnyAttribute" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with arguments "AttributeNamespace.OtherTypeArgument" and "UnusedValueArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have any attributes with arguments "42" and "NotTheValueOfAnyAttribute"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.OtherClassWithArguments" should have any attributes with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should have any attributes with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Result: True -Description: AttributeNamespace.OtherClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have any attributes with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should have any attributes with arguments "2" Result: False -Description: AttributeNamespace.ClassWithAttributes does have attributes with argument values "" and "" and "-1" and "" and "" and "" and "-1" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithArguments passed Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have any attributes with arguments "0"" failed: - AttributeNamespace.ClassWithAttributes does have attributes with argument values "" and "" and "-1" and "" and "" and "" and "-1" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should have any attributes with arguments "2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesWithNamedArguments.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesWithNamedArguments.verified.txt index c1fd1056..b7a8d6c5 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesWithNamedArguments.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAnyAttributesWithNamedArguments.verified.txt @@ -1,168 +1,165 @@ ===== No violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== No violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter2=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter2=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== Violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "InvalidName=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "InvalidName=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "InvalidName=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "InvalidName=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" ===== Violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "OtherNamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "InvalidName=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "OtherNamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "InvalidName=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "OtherNamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "InvalidName=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "OtherNamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "InvalidName=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter2=OtherNamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter2=NotTheValueOfAnyAttribute"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter2=OtherNamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter2=NotTheValueOfAnyAttribute"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" ===== Empty arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have no or any attributes with named arguments (always true) +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have no or any attributes with named arguments (always true) Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=NotTheValueOfAnyAttribute" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=OtherNamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=NotTheValueOfAnyAttribute"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=NotTheValueOfAnyAttribute" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=OtherNamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=NotTheValueOfAnyAttribute"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" -Result: False -Description: AttributeNamespace.ClassWithAttributes does have no attribute with a named argument +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" +Result: True +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments passed Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithAttributes does have no attribute with a named argument - - +All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have any attributes with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" Result: False -Description: AttributeNamespace.ClassWithAttributes does have no attribute with a named argument +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments passed Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithAttributes does have no attribute with a named argument +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have any attributes with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAttributeWithArgumentsTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAttributeWithArgumentsTest.verified.txt index fc6d2b16..b48c18cc 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAttributeWithArgumentsTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAttributeWithArgumentsTest.verified.txt @@ -1,220 +1,220 @@ ===== No violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== No violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.UnusedTypeArgument" ===== Violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "OtherArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" ===== Type outside of architecture ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "TypeDependencyNamespace.BaseClass" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "TypeDependencyNamespace.BaseClass" with arguments "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "TypeDependencyNamespace.BaseClass" with arguments "Argument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "TypeDependencyNamespace.BaseClass" with arguments "Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "TypeDependencyNamespace.BaseClass" with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "TypeDependencyNamespace.BaseClass" with arguments "Argument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "TypeDependencyNamespace.BaseClass" with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "TypeDependencyNamespace.BaseClass" with arguments "Argument1" ===== Null argument ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments """ failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments """ failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments """ failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments """ failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute1" with arguments "" ===== Empty arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument" and "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" and "1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument" and "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" and "1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument" and "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" and "1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument" and "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" and "1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.OtherClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Result: True -Description: AttributeNamespace.OtherClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should have attribute "AttributeNamespace.Attribute2" with arguments "2" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with arguments "0" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute2" with arguments "2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithArguments passed Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with arguments "0"" failed: - AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with arguments "0" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should have attribute "AttributeNamespace.Attribute2" with arguments "2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does not have attribute "AttributeNamespace.Attribute2" with arguments "2" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAttributeWithNamedArguments.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAttributeWithNamedArguments.verified.txt index 4c6f0dbd..a063cf73 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAttributeWithNamedArguments.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.HaveAttributeWithNamedArguments.verified.txt @@ -1,347 +1,293 @@ ===== No violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== No violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== Violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" - - - -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" -Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" -Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" - - - -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" -Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" -Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" ===== Violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" -Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" -Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" - - - -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" -Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" -Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" - - - -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" -Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" -Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" - - - -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" -Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" -Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter2=NamedArgument" - - - -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "InvalidName=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NotTheValueOfAnyAttribute"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=OtherNamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NotTheValueOfAnyAttribute"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" ===== Unused attribute ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" ===== Type outside of architecture ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does not have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" ===== Emtpy arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter... +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter2=3" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter..." failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter2=3" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter... +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter2=3" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter..." failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter2=3" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter... +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter2=3" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter..." failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter2=3" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter... +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter2=3" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter..." failed: - AttributeNamespace.ClassWithArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "OtherNamedParameter2=3" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments passed Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments passed Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments passed Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" Result: False -Description: AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments passed Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithAttributes does not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does not have attribute "AttributeNamespace.Attribute2" with named arguments "NamedParameter3=AttributeNamespace.TypeArgument2" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesTest.verified.txt index 9ec02f7e..5a92b57d 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesTest.verified.txt @@ -79,7 +79,7 @@ Message: ===== Type outside of architecture ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should not have any "TypeDependencyNamespace.BaseClass" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any "TypeDependencyNamespace.BaseClass" Exception: Type TypeDependencyNamespace.BaseClass does not exist in provided architecture or is no class. ===== Empty arguments ===== @@ -116,69 +116,69 @@ All Evaluations passed ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +Description: AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: + AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Query: Types that are "AttributeNamespace.ClassWithAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +Description: AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: + AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Query: Types that are "AttributeNamespace.ClassWithAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +Description: AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: + AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Query: Types that are "AttributeNamespace.ClassWithAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +Description: AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: + AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Query: Types that are "AttributeNamespace.ClassWithAttributes" should not have any Attributes that are "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any Attributes that are "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +Description: AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 Message: -"Types that are "AttributeNamespace.ClassWithAttributes" should not have any Attributes that are "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +"Types that are "AttributeNamespace.ClassWithTwoAttributes" should not have any Attributes that are "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2"" failed: + AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithoutAttributes" or "AttributeNamespace.OtherClassWithoutAttributes" should not have any "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithoutAttributes" or "AttributeNamespace.ClassWithSingleAttribute" should not have any "AttributeNamespace.Attribute2" Result: True Description: AttributeNamespace.ClassWithoutAttributes passed Result: True -Description: AttributeNamespace.OtherClassWithoutAttributes passed +Description: AttributeNamespace.ClassWithSingleAttribute passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithoutAttributes" or "AttributeNamespace.OtherClassWithAttributes" should not have any "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithoutAttributes" or "AttributeNamespace.ClassWithSingleAttribute" should not have any "AttributeNamespace.Attribute1" Result: True Description: AttributeNamespace.ClassWithoutAttributes passed Result: False -Description: AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 +Description: AttributeNamespace.ClassWithSingleAttribute does have attribute AttributeNamespace.Attribute1 Message: -"Types that are "AttributeNamespace.ClassWithoutAttributes" or "AttributeNamespace.OtherClassWithAttributes" should not have any "AttributeNamespace.Attribute1"" failed: - AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 +"Types that are "AttributeNamespace.ClassWithoutAttributes" or "AttributeNamespace.ClassWithSingleAttribute" should not have any "AttributeNamespace.Attribute1"" failed: + AttributeNamespace.ClassWithSingleAttribute does have attribute AttributeNamespace.Attribute1 diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesWithArgumentsTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesWithArgumentsTest.verified.txt index 5d38eba5..a33c088c 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesWithArgumentsTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesWithArgumentsTest.verified.txt @@ -1,74 +1,74 @@ ===== No violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== No violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "UnusedValueArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "NotTheValueOfAnyAttribute" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "UnusedValueArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "NotTheValueOfAnyAttribute" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.TypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.TypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.TypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.TypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" ===== Violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "0"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "0"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" ===== Type without attributes ===== -Query: Types that are "AttributeNamespace.ClassWithoutAttributes" should not have any attributes with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithoutAttributes" should not have any attributes with arguments "Argument1" Result: True Description: AttributeNamespace.ClassWithoutAttributes passed Message: @@ -76,61 +76,63 @@ All Evaluations passed ===== Null argument ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Empty arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have no or any attributes with arguments (impossible) +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have no or any attributes with arguments (impossible) Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" and "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" and "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" and "Argument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" and "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" and "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" and "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" and "Argument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should not have any attributes with arguments "AttributeNamespace.UnusedTypeArgument" and "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should not have any attributes with arguments "Argument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should not have any attributes with arguments "Argument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithTwoAttributesWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "Argument2" and "2" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should not have any attributes with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should not have any attributes with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" + AttributeNamespace.ClassWithTwoAttributesWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "Argument2" and "2" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should not have any attributes with arguments "Argument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should not have any attributes with arguments "Argument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithTwoAttributesWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "Argument2" and "2" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should not have any attributes with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with argument values "Argument" and "Argument" and "0" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedArgument" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "OtherArgument" and "2" and "OtherNamedArgument" and "3" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithArguments" should not have any attributes with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" + AttributeNamespace.ClassWithTwoAttributesWithArguments does have attributes with argument values "Argument1" and "Argument1" and "1" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "Argument2" and "2" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesWithNamedArgumentsTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesWithNamedArgumentsTest.verified.txt index 7764bed8..940da8f6 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesWithNamedArgumentsTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAnyAttributesWithNamedArgumentsTest.verified.txt @@ -1,144 +1,146 @@ ===== No violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "InvalidName=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "OtherNamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "InvalidName=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.OtherNamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.UnusedTypeArgument" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== No violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "OtherNamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "InvalidName=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "OtherNamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "InvalidName=Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter2=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter2=NotTheValueOfAnyAttribute" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== Violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" ===== Violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" ===== Empty arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have no or any attributes with named arguments (impossible) +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have no or any attributes with named arguments (impossible) Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" and "NamedParameter1=Argument2" and "NamedParameter2=2" and "NamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" and "NamedParameter1=Argument2" and "NamedParameter2=2" and "NamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" Result: False -Description: AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" and "NamedParameter1=Argument2" and "NamedParameter2=2" and "NamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=NamedArgument" and "NamedParameter3=1" and "OtherNamedParameter1=OtherNamedArgument" and "OtherNamedParameter2=3" and "OtherNamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should not have any attributes with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments does have attributes with named arguments "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter1=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" and "NamedParameter2=Argument1" and "NamedParameter3=1" and "NamedParameter1=Argument2" and "NamedParameter2=2" and "NamedParameter3=ArchUnitNET.Domain.TypeInstance`1[ArchUnitNET.Domain.Class]" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAttributeWithArgumentsTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAttributeWithArgumentsTest.verified.txt index 79a4cf95..9a519f61 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAttributeWithArgumentsTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAttributeWithArgumentsTest.verified.txt @@ -1,280 +1,284 @@ ===== No violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== No violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.OtherTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" ===== Violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "0" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "0"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "0" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "0" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "0"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "0" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "0" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "0"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "0" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "0" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "0"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "0" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "1" ===== Unused attribute ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "Argument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "Argument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Type outside of architecture ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "TypeDependencyNamespace.BaseClass" with arguments "1" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "TypeDependencyNamespace.BaseClass" with arguments "1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Null argument ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with arguments "" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments passed Message: All Evaluations passed ===== Empty arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument" and "0" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "AttributeNamespace.TypeArgument1" and "1" ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with arguments "Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with arguments "Argument1" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAttributeWithNamedArgumentsTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAttributeWithNamedArgumentsTest.verified.txt index fd8df0b6..dc6d38b7 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAttributeWithNamedArgumentsTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveAttributeWithNamedArgumentsTest.verified.txt @@ -1,266 +1,270 @@ ===== No violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== No violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "OtherNamedParameter1=OtherNamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument2" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== Violations with type arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" ===== Violations with value arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=NamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter2=Argument1" ===== Unused attribute ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.UnusedAttribute" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithArguments passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== Type outside of architecture ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should does have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "TypeDependencyNamespace.BaseClass" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments passed Message: All Evaluations passed ===== Empty arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter... +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Ar... Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter..." failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Ar..." failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter... +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Ar... Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter..." failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Ar..." failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter... +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Ar... Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter..." failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Ar..." failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter... +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Ar... Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter..." failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" and "NamedParameter2=NamedArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Ar..." failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" and "NamedParameter2=Argument1" ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" -Query: Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" -Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Query: Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" +Result: False +Description: AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Result: False -Description: AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +Description: AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" Message: -"Types that are "AttributeNamespace.ClassWithArguments" or "AttributeNamespace.ClassWithAttributes" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument"" failed: - AttributeNamespace.ClassWithArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.NamedTypeArgument" +"Types that are "AttributeNamespace.ClassWithSingleAttributeWithNamedArguments" or "AttributeNamespace.ClassWithTwoAttributesWithNamedArguments" should does have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1"" failed: + AttributeNamespace.ClassWithSingleAttributeWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" + AttributeNamespace.ClassWithTwoAttributesWithNamedArguments not have attribute "AttributeNamespace.Attribute1" with named arguments "NamedParameter1=AttributeNamespace.TypeArgument1" diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveNameTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveNameTest.verified.txt index b50b9f3f..17d40424 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveNameTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.NotHaveNameTest.verified.txt @@ -42,7 +42,7 @@ Description: TypeDependencyNamespace.BaseClass passed Message: All Evaluations passed -Query: Types that are "TypeDependencyNamespace.BaseClass" should not have name ending with "Base" +Query: Types that are "TypeDependencyNamespace.BaseClass" should not have name ending with "Test" Result: True Description: TypeDependencyNamespace.BaseClass passed Message: @@ -86,11 +86,11 @@ Message: -Query: Types that are "TypeDependencyNamespace.BaseClass" should not have name containing "Base" +Query: Types that are "TypeDependencyNamespace.BaseClass" should not have name containing "BaseClass" Result: False Description: TypeDependencyNamespace.BaseClass does have name BaseClass Message: -"Types that are "TypeDependencyNamespace.BaseClass" should not have name containing "Base"" failed: +"Types that are "TypeDependencyNamespace.BaseClass" should not have name containing "BaseClass"" failed: TypeDependencyNamespace.BaseClass does have name BaseClass @@ -104,20 +104,20 @@ Message: -Query: Types that are "TypeDependencyNamespace.BaseClass" should not have name starting with "Base" +Query: Types that are "TypeDependencyNamespace.BaseClass" should not have name starting with "BaseClass" Result: False Description: TypeDependencyNamespace.BaseClass does have name BaseClass Message: -"Types that are "TypeDependencyNamespace.BaseClass" should not have name starting with "Base"" failed: +"Types that are "TypeDependencyNamespace.BaseClass" should not have name starting with "BaseClass"" failed: TypeDependencyNamespace.BaseClass does have name BaseClass -Query: Types that are "TypeDependencyNamespace.BaseClass" should not have name ending with "Class" +Query: Types that are "TypeDependencyNamespace.BaseClass" should not have name ending with "BaseClass" Result: False Description: TypeDependencyNamespace.BaseClass does have name BaseClass Message: -"Types that are "TypeDependencyNamespace.BaseClass" should not have name ending with "Class"" failed: +"Types that are "TypeDependencyNamespace.BaseClass" should not have name ending with "BaseClass"" failed: TypeDependencyNamespace.BaseClass does have name BaseClass diff --git a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.OnlyHaveAttributesTest.verified.txt b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.OnlyHaveAttributesTest.verified.txt index 4de54a0f..1015d080 100644 --- a/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.OnlyHaveAttributesTest.verified.txt +++ b/ArchUnitNETTests/Fluent/Syntax/Elements/Snapshots/ObjectsShouldTests.OnlyHaveAttributesTest.verified.txt @@ -125,95 +125,58 @@ All Evaluations passed ===== Multiple arguments ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" should does only have "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should does only have "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should does only have "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should does only have "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should does only have "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should does only have "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should does only have "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should does only have "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed -Query: Types that are "AttributeNamespace.ClassWithAttributes" should does only have Attributes that are "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" +Query: Types that are "AttributeNamespace.ClassWithTwoAttributes" should does only have Attributes that are "AttributeNamespace.Attribute1" or "AttributeNamespace.Attribute2" Result: True -Description: AttributeNamespace.ClassWithAttributes passed +Description: AttributeNamespace.ClassWithTwoAttributes passed Message: All Evaluations passed ===== Multiple inputs ===== -Query: Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have "AttributeNamespace.UnusedAttribute" -Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Result: False -Description: AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Message: -"Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 - AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 - - - -Query: Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have "AttributeNamespace.UnusedAttribute" -Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Result: False -Description: AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Message: -"Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 - AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 - - - -Query: Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have "AttributeNamespace.UnusedAttribute" -Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Result: False -Description: AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 -Message: -"Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 - AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 - - - -Query: Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have "AttributeNamespace.UnusedAttribute" -Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +Query: Types that are "AttributeNamespace.ClassWithSingleAttribute" or "AttributeNamespace.ClassWithTwoAttributes" should does only have "AttributeNamespace.Attribute1" +Result: True +Description: AttributeNamespace.ClassWithSingleAttribute passed Result: False -Description: AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +Description: AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute2 Message: -"Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 - AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +"Types that are "AttributeNamespace.ClassWithSingleAttribute" or "AttributeNamespace.ClassWithTwoAttributes" should does only have "AttributeNamespace.Attribute1"" failed: + AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute2 -Query: Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have Attributes that are "AttributeNamespace.UnusedAttribute" +Query: Types that are "AttributeNamespace.ClassWithSingleAttribute" or "AttributeNamespace.ClassWithTwoAttributes" should does only have "AttributeNamespace.Attribute2" Result: False -Description: AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +Description: AttributeNamespace.ClassWithSingleAttribute does have attribute AttributeNamespace.Attribute1 Result: False -Description: AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +Description: AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 Message: -"Types that are "AttributeNamespace.ClassWithAttributes" or "AttributeNamespace.OtherClassWithAttributes" should does only have Attributes that are "AttributeNamespace.UnusedAttribute"" failed: - AttributeNamespace.ClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 - AttributeNamespace.OtherClassWithAttributes does have attribute AttributeNamespace.Attribute1 and AttributeNamespace.Attribute2 +"Types that are "AttributeNamespace.ClassWithSingleAttribute" or "AttributeNamespace.ClassWithTwoAttributes" should does only have "AttributeNamespace.Attribute2"" failed: + AttributeNamespace.ClassWithSingleAttribute does have attribute AttributeNamespace.Attribute1 + AttributeNamespace.ClassWithTwoAttributes does have attribute AttributeNamespace.Attribute1 diff --git a/TestAssemblies/AttributeAssembly/AttributeAssembly.cs b/TestAssemblies/AttributeAssembly/AttributeAssembly.cs index 31ec2a87..ac5e7f33 100644 --- a/TestAssemblies/AttributeAssembly/AttributeAssembly.cs +++ b/TestAssemblies/AttributeAssembly/AttributeAssembly.cs @@ -2,16 +2,6 @@ namespace AttributeNamespace; -public class TypeArgument { }; - -public class OtherTypeArgument { }; - -public class NamedTypeArgument { } - -public class OtherNamedTypeArgument { } - -public class UnusedTypeArgument { } - [System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Struct)] public class Attribute1 : System.Attribute { @@ -31,11 +21,24 @@ public class Attribute2 : System.Attribute public Attribute2(System.Type? parameter1 = null, string parameter2 = "", int parameter3 = -1) { } - public string OtherNamedParameter1 { get; set; } = ""; + public string NamedParameter1 { get; set; } = ""; + + public int NamedParameter2 { get; set; } + + public System.Type? NamedParameter3 { get; set; } +} + +[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Struct)] +public class Attribute3 : System.Attribute +{ + public Attribute3(int parameter3 = -1, System.Type? parameter1 = null, string parameter2 = "") + { } + + public int NamedParameter1 { get; set; } - public int OtherNamedParameter2 { get; set; } + public System.Type? NamedParameter2 { get; set; } - public System.Type? OtherNamedParameter3 { get; set; } + public string NamedParameter3 { get; set; } = ""; } [System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Struct)] @@ -56,54 +59,89 @@ public UnusedAttribute( public class ClassWithoutAttributes { } -public class OtherClassWithoutAttributes { } - [Attribute1] public class ClassWithSingleAttribute { } -[Attribute1] -public class OtherClassWithSingleAttribute { } - [Attribute1] [Attribute2] -public class ClassWithAttributes { } +public class ClassWithTwoAttributes { } [Attribute1] [Attribute2] -public class OtherClassWithAttributes { } +[Attribute3] +public class ClassWithThreeAttributes { } + +public class TypeArgument1 { }; + +public class TypeArgument2 { }; + +public class TypeArgument3 { }; + +public class UnusedTypeArgument { }; + +[Attribute1("Argument1", 1, typeof(TypeArgument1))] +public class ClassWithSingleAttributeWithArguments { } + +[Attribute1("Argument1", 1, typeof(TypeArgument1))] +[Attribute2(typeof(TypeArgument2), "Argument2", 2)] +public class ClassWithTwoAttributesWithArguments { } + +[Attribute1("Argument1", 1, typeof(TypeArgument1))] +[Attribute2(typeof(TypeArgument2), "Argument2", 2)] +[Attribute3(3, typeof(TypeArgument3), "Argument3")] +public class ClassWithThreeAttributesWithArguments { } + +[Attribute1( + NamedParameter1 = typeof(TypeArgument1), + NamedParameter2 = "Argument1", + NamedParameter3 = 1 +)] +public class ClassWithSingleAttributeWithNamedArguments { } [Attribute1( - "Argument", - 0, - typeof(TypeArgument), - NamedParameter1 = typeof(NamedTypeArgument), - NamedParameter2 = "NamedArgument", + NamedParameter1 = typeof(TypeArgument1), + NamedParameter2 = "Argument1", NamedParameter3 = 1 )] [Attribute2( - typeof(OtherTypeArgument), - "OtherArgument", - 2, - OtherNamedParameter1 = "OtherNamedArgument", - OtherNamedParameter2 = 3, - OtherNamedParameter3 = typeof(OtherNamedTypeArgument) + NamedParameter1 = "Argument2", + NamedParameter2 = 2, + NamedParameter3 = typeof(TypeArgument2) )] -public class ClassWithArguments { } +public class ClassWithTwoAttributesWithNamedArguments { } [Attribute1( - "Argument", - 0, - typeof(TypeArgument), - NamedParameter1 = typeof(NamedTypeArgument), - NamedParameter2 = "NamedArgument", + NamedParameter1 = typeof(TypeArgument1), + NamedParameter2 = "Argument1", NamedParameter3 = 1 )] [Attribute2( - typeof(OtherTypeArgument), - "OtherArgument", - 2, - OtherNamedParameter1 = "OtherNamedArgument", - OtherNamedParameter2 = 3, - OtherNamedParameter3 = typeof(OtherNamedTypeArgument) + NamedParameter1 = "Argument2", + NamedParameter2 = 2, + NamedParameter3 = typeof(TypeArgument2) +)] +[Attribute3( + NamedParameter1 = 3, + NamedParameter2 = typeof(TypeArgument3), + NamedParameter3 = "Argument3" )] -public class OtherClassWithArguments { } +public class ClassWithThreeAttributesWithNamedArguments { } + +[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Struct)] +public class OnceUsedAttribute : System.Attribute +{ + public OnceUsedAttribute( + string parameter1 = "", + int parameter2 = -1, + System.Type? parameter3 = null + ) { } + + public System.Type? NamedParameter1 { get; set; } + + public string NamedParameter2 { get; set; } = ""; + + public int NamedParameter3 { get; set; } +} + +[OnceUsed] +public class ClassWithSingleUniquelyUsedAttribute { }