web-dev-qa-db-fra.com

Mockito Matcher et tableau de primitives

Avec Mockito, je veux verify() un appel de méthode avec byte[] dans sa liste d'arguments, mais je n'ai pas trouvé comment écrire ceci.

 myMethod( byte[] )

Je veux juste quelque chose comme anyByteArray(), comment faire ça avec Mockito?

210
tbruyelle

Je voudrais essayer any(byte[].class)

390
gpeche

Essaye ça:

AdditionalMatchers.aryEq(array);
27
Alécio Carvalho

Je préférerais utiliser Matchers.<byte[]>any(). Cela a fonctionné pour moi.

12
Fabiano Francesconi

Je suis d'accord avec Mutanos et Alecio. De plus, on peut vérifier autant d'appels de méthode identiques que possible (en vérifiant les appels suivants dans le code de production, l'ordre des vérifications n'a pas d'importance). Voici le code:

import static org.mockito.AdditionalMatchers.*;

    verify(mockObject).myMethod(aryEq(new byte[] { 0 }));
    verify(mockObject).myMethod(aryEq(new byte[] { 1, 2 }));
9
Rene Ummels

Vous pouvez utiliser Mockito.any () lorsque les arguments sont également des tableaux. Je l'ai utilisé comme ça:

verify(myMock, times(0)).setContents(any(), any());
0
Crenguta S

Ou..

byte[] sampleTextFileAsBytes = new byte[]{anyByte()};
0
kunalk83

J'ai utilisé Matchers.refEq pour cela.

0
Bowofola