Skip to content

Releases: NeVeSpl/NetArchTest.eNhancedEdition

v1.4.1

06 Dec 14:12
Compare
Choose a tag to compare

Added to the API:

Predicate:

  • AreStaticless
  • DoNotHaveParameterlessConstructor
  • DoNotHavePublicConstructor
  • HaveParameterlessConstructor
  • HavePublicConstructor

Condition:

  • BeStaticless
  • HaveParameterlessConstructor
  • HavePublicConstructor
  • NotHaveParameterlessConstructor
  • NotHavePublicConstructor

TestResult:

  • LoadedAssemblies

v1.4.0

27 Nov 17:32
Compare
Choose a tag to compare

Added to the API:

Predicate:

  • AreNotUsedByAny
  • AreUsedByAny

Condition:

  • BeUsedByAny
  • NotBeUsedByAny

TestResult:

  • LoadedTypes
  • SelectedTypesForTesting

v1.3.9

25 Nov 08:47
13fac64
Compare
Choose a tag to compare

Added to the API:

Predicate:

  • AreImmutableExternally
  • AreInheritedByAnyType
  • AreNotInheritedByAnyType
  • AreNotOfType
  • AreOfType
  • AreStateless
  • DoNotHaveCustomAttribute<T>
  • DoNotHaveCustomAttributeOrInherit<T>
  • DoNotImplementInterface<T>
  • DoNotInherit<T>
  • HaveCustomAttribute<T>
  • HaveCustomAttributeOrInherit<T>
  • ImplementInterface<T>
  • Inherit<T>
  • MeetCustomRule(Func<TypeDefinition, bool> rule)
  • OnlyHaveNonNullableMembers

Condition:

  • BeImmutableExternally
  • BeOfType
  • BeStateless
  • HaveCustomAttribute<T>
  • HaveCustomAttributeOrInherit<T>
  • HaveMatchingTypeWithName
  • HaveSourceFileNameMatchingName
  • HaveSourceFilePathMatchingNamespace
  • ImplementInterface<T>
  • Inherit<T>
  • MeetCustomRule(Func<TypeDefinition, bool> rule)
  • NotBeOfType
  • NotHaveCustomAttribute<T>
  • NotHaveCustomAttributeOrInherit<T>
  • NotImplementInterface<T>
  • NotInherit<T>
  • OnlyHaveNonNullableMembers

IType:

  • SourceFilePath

v1.3.8

21 Nov 17:12
Compare
Choose a tag to compare

Added to the API:

Predicate

  • AreDelegates
  • AreEnums
  • AreInternal
  • AreNotDelegates
  • AreNotEnums
  • AreNotInternal
  • AreNotPrivate
  • AreNotPrivateProtected
  • AreNotProtected
  • AreNotProtectedInternal
  • AreNotStructures
  • ArePrivate
  • ArePrivateProtected
  • AreProtected
  • AreProtectedInternal
  • AreStructures

Condition:

  • BeDelegates
  • BeEnums
  • BeInternal
  • BePrivate
  • BePrivateProtected
  • BeProtected
  • BeProtectedInternal
  • BeStructures
  • NotBeDelegates
  • NotBeEnums
  • NotBeInternal
  • NotBePrivate
  • NotBePrivateProtected
  • NotBeProtected
  • NotBeProtectedInternal
  • NotBeStructures

Options

  • Comparer

Removed from the API:

Predicate

  • AreNestedPrivate - replaced with Predicate.ArePrivate
  • AreNestedPublic - replaced with Predicate.ArePublic
  • AreNotNestedPrivate
  • AreNotNestedPublic
  • HaveNameEndingWith accepting StringComparison - replaced with Options
  • HaveNameStartingWith accepting StringComparison - replaced with Options
  • ResideInNamespaceStartingWith - because it was doing exactly the same thing as Predicate.ResideInNamespace

Condition

  • BeNestedPrivate
  • BeNestedPublic
  • HaveNameEndingWith accepting StringComparison - replaced with Options
  • HaveNameStartingWith accepting StringComparison - replaced with Options
  • NotBeNestedPrivate
  • NotBeNestedPublic
  • ResideInNamespaceStartingWith

Corrected behavior:

  • Predicate.BeAbstract - false positive results were possible
  • Predicate.BeSealed -false positive results were possible
  • Predicate.HaveName, Predicate.HaveNameStartingWith, Predicate.HaveNameEndingWith - for generic types, theirs names are compared without number of type parameters (e.g. `1)

v1.3.6

01 Jun 17:55
Compare
Choose a tag to compare

fixed #3 - generic Type placeholders T*, T[], T& were incorrectly detected as dependencies

v1.3.5

13 May 17:24
Compare
Choose a tag to compare
  • add support for records and init-only properties
  • TestResult.FailingTypes switch from null to an empty collection in successful paths

v1.3.4

11 Jan 16:11
Compare
Choose a tag to compare

IType replaced System.Type in every place that returns results to the user.

Renamed API items:

OnlyHaveDependenciesOn -> OnlyHaveDependencyOn
HaveDependenciesOtherThan -> HaveDependencyOtherThan

Added to the API:

IType

  • Explanation
  • Name
  • FullName
  • ReflectionType

PredicateList

  • Slice

Removed from the API:

Condition

  • HaveDependencyOn - because it was duplicating HaveDependencyOnAny
  • NotHaveDependencyOn - because it was duplicating NotHaveDependencyOnAny

Predicate

  • DoNotHaveDependencyOn - because it was duplicating DoNotHaveDependencyOnAny
  • HaveDependencyOn - because it was duplicating HaveDependencyOnAny

Types

  • InNamespace

TestResult

  • FailingTypeNames