ArchUnitNET icon indicating copy to clipboard operation
ArchUnitNET copied to clipboard

ResidesInAssembly loading System.*

Open AdrianoAE opened this issue 5 months ago • 1 comments

When verifying types from assemblies, the base types are being considered

IArchRule rule = Types()
	.That().ResideInAssembly(_DOMAIN_ASSEMBLY)
	.Should().NotDependOnAnyTypesThat().ResideInAssembly(_API_ASSEMBLY);

_ARCHITECTURE.CheckRule(rule);

Expected: Success because there is no reference between the projects

Actual:

ArchUnitNET.xUnit.FailedArchRuleException : "Types that reside in assembly "Domain, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" should not depend on any types that reside in assembly "Api, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"" failed:
	Domain.MyClass1 does depend on System.Runtime.CompilerServices.IsReadOnlyAttribute and System.IEquatable`1 and System.TimeSpan and System.TimeSpan& and System.Boolean and System.String and System.Object and System.Int32 and System.Collections.Generic.EqualityComparer`1

Same thing for the opposite rule with DependOnAnyTypesThat(). BCL and FCL types should not be taken into consideration since they are no declared in the given assembly

AdrianoAE avatar Sep 08 '24 06:09 AdrianoAE