Comment utiliser CollectionAssert (et LINQ?) Pour trouver toutes les valeurs pour une propriété, sont les mêmes?

StackOverflow https://stackoverflow.com/questions/2190152

  •  25-09-2019
  •  | 
  •  

Question

est une extension à un question précédente , aujourd'hui .... qui a mis en évidence l'utilisation de CollectionAssert pour aider les collections de test (que je ne connaissais pas).

J'ai un ICollection<Foo> foos; Cela a une propriété appelée Statut, qui .. pour garder les choses simples, est un int ou octet (quel que soit votre bateau flotte <- voir ce que je faisais là-bas ?! / me cache)

Alors, comment puis-je utiliser CollectionAssert pour voir si tous les éléments, dans le ICollection retourné, tous ont la même valeur pour cette une propriété?

Était-ce utile?

La solution

Je ne vois rien dans CollectionAssert pour aider, mais vous pouvez faire quelque chose comme:

int expectedValue = foos.First().Status;
Assert.IsTrue(foos.All(x => x.Status == expectedValue));

Il est pas idéal que ce ne sera pas vous montrer les valeurs réelles en cas d'échec -. Mais vous pouvez écrire votre propre méthode pour cela, si vous devez le faire régulièrement

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top