Rendre visibles les classes et méthodes internes facilement

Avec les nouveaux fichiers projets de .net il est très facile de rendre visibles des éléments internes d’un projet (pour les tests par exemple).

Il suffit d’ajouter le nœud InternalsVisibleTo à son projet, et de renseigner son attribut Include avec le nom de l’assembly qui doit voir les éléments internes.

Exemple pour un projet .net 6 :

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net6.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
  </PropertyGroup>

  <ItemGroup>
	<InternalsVisibleTo Include="$(AssemblyName).Tests"/>
  </ItemGroup>
	
</Project>

Dans cet exemple, le projet de tests porte le même nom que mon projet + le suffixe ".Tests".

Il n’est donc plus utile d’ajouter l’attribut InternalsVisibleToAttribute à une classe du projet.

Jérémy Jeanson

Comments

You have to be logged in to comment this post.