C# unit-test für eine Methode, die fordert, Konsole.ReadLine()

Möchte ich zum erstellen einer unit test für eine member-Funktion einer Klasse aufgerufen ScoreBoard die Speicherung der top fünf Spieler in einem Spiel.

Das problem ist, dass die Methode, die ich erstellt einen test für (SignInScoreBoard) ruft Console.ReadLine() so kann der Benutzer geben Sie Ihren Namen ein:

public void SignInScoreBoard(int steps)
{
    if (topScored.Count < 5)
    {
        Console.Write(ASK_FOR_NAME_MESSAGE);
        string name = Console.ReadLine();
        KeyValuePair<string, int> pair = new KeyValuePair<string, int>(name, steps);
        topScored.Insert(topScored.Count, pair);
    }
    else
    {
        if (steps < topScored[4].Value)
        {
            topScored.RemoveAt(4);
            Console.Write(ASK_FOR_NAME_MESSAGE);
            string name = Console.ReadLine();
            topScored.Insert(4, new KeyValuePair<string, int>(name, steps));
        }
    }
}

Gibt es eine Möglichkeit einfügen, wie zehn Benutzer, so kann ich überprüfen, ob die fünf mit weniger moves (Schritte) gespeichert sind?

InformationsquelleAutor Petur Subev | 2010-07-01
Schreibe einen Kommentar