Mockito avec des variables locales

J'ai une méthode simple qui retourne un String.

Il crée également un local List. Je veux tester la valeur ajoutée pour les locaux List.

Voici un exemple

package com.impl;

import java.util.ArrayList;
import java.util.List;

import com.test.domain.CustomerVo;

public class ClassImpl {

    public String assignGift(CustomerVo customerVo) {
        List<String> listOfGift = new ArrayList<String>();

        if (customerVo.getName().equals("Joe")) {
            listOfGift.add("ball");
        } else if ((customerVo.getName().equals("Terry"))) {
            listOfGift.add("car");
        } else if (customerVo.getName().equals("Merry")) {
            listOfGift.add("tv");
        }else {
            listOfGift.add("no gift");
        }

        return "dummyString";
    }
}

Comment puis-je tester que lorsque le customerVo.getName.equals("Terry"), car est ajouté à la local List.

La liste de tableaux est purement locale à la méthode, il n'est pas ajouté à la CustomerVo, de sorte que vous ne pouvez pas tester quoi que ce soit. C'est comme si elle n'existait pas.
+1 pour Frank. La méthode pourrait être réduit à return "dummyString"; et de faire toujours la même chose, mais de manière plus efficace.
merci beaucoup pour la réponse c'est un mannequin méthode créée pour lui demander si nous pouvons tester la variable locale.
vous devriez avoir indiqué clairement dans votre question.
Le point est que vous ne devriez PAS tenter de tester la valeur d'une variable locale. Essais de méthodes doit être en ce qui concerne la méthode de l'effet: valeur de retour, les exceptions levées, les paramètres ou les champs de la classe modifiés, d'autres effets secondaires extérieur à la classe. Si la valeur d'une variable locale n'affecte pas l'un de ces, cette variable locale est inutile et devrait être supprimé.

OriginalL'auteur user1999453 | 2013-05-12