FluentAssertions: should Beequivalent to vs Should ().Be () vs Should ().BeEquivalentTo ()?
Quelqu'un peut-il résumer les différences et la portée de l'utilisation entre eux?
j'ai lu TELLEMENT d'articles,
- ShouldBeEquivalientTo(): ShouldBeEquivalentTo () est destiné à être utilisé pour comparer des graphiques d'objets complexes plutôt que la partie des types primitifs du .net framework.
- Devrait().BeEquivalentTo (): éléments individuels Equals() de la mise en œuvre pour vérifier l'équivalence et a été autour depuis la version 1. La plus récente ShouldBeEquivalenTo () introduit dans FA 2.0 effectue une comparaison structurelle en profondeur et rend compte également de toute différence.
- devrait ().Be ():impossible de trouver.
À mon humble compréhension, ShouldBeEquivalientTo()
et Should().BeEquivalentTo()
travail similaire si Should().BeEquivalentTo()
fait une comparaison en profondeur.
16
demandé sur
Community
2014-09-19 06:43:39
1 réponses
je suis d'accord c'est déroutant. Should().BeEquivalentTo()
devrait en fait être appelé Should().EqualInAnyOrder()
ou quelque chose comme ça. Comme vous l'avez dit, il utilise le Equals
implémentation des objets impliqués pour voir si tous ceux de expected
collection apparaissent dans le actual
collecte, indépendamment de l'ordre. Je vais devoir arranger ça pour la prochaine version majeure.
20
répondu
Dennis Doomen
2014-09-19 06:51:40