2013-05-18 4 views
3

Je suis nouveau à Robolectric et je suis à un barrage routier. J'ai un événement personnalisé qui se déclenche lors de la sélection d'un élément dans spinner et je veux tester cela en utilisant robolectric. J'ai vu que la classe ShadowSpinner fournit une fonction d'assistance comme stateSpinner.clickFirstItemContainingText pour cliquer sur un élément particulier. Je me remplir avec des valeurs propres spinner que je test d'impression sur chaque élément commeComment faire Robolectric sélectionner un article particulier

for (int i = 0; i < spinner_items.length; ++i) { 
      spinner_items[i] = (String) spinner.getAdapter().getItem(i); 
     } 
System.out.println("Spinner Items " 
       + Arrays.asList(spinner_items).toString()); 

Cependant quand j'utilise clickFirstItemContainingText avec l'une des valeurs pulated po , je reçois un IllegalArgumentException. Aucun élément trouvé contenant un test qui est étrange comme le code ci-dessus montre qu'il existe une valeur particulière.

Toute aide serait grandement appréciée

Répondre

2

Je ne pouvais pas Robolectric travailler avec les filateurs. Le problème est que les vues pour les éléments de liste dans le spinner n'existeront pas en dehors de celui sélectionné. Cela peut être vu comme spinner.getChildCount() retournera toujours 1. Il suffit d'appeler spinner.setSelection().

Questions connexes