Moq - It.IsAny <string> () sempre retornando null

O que pode causarIt.IsAny<string>() para retornar nulo a cada chamada? Estou incorreto ao supor que ele foi projetado para retornar uma sequência não nula?

Aqui está o uso - onde o método Login lança uma ArgumentNullException para um segundo argumento nulo (string de conexão). Eu estava assumindo queIt.IsAny<string>() forneceria uma sequência não nula, que ignoraria a ArgumentNullExceptio

var mockApiHelper = new Mock<ApiHelper>();
mockApiHelper.Setup(m => m.Connect(It.IsAny<string>(), 
                                   It.IsAny<string>(), 
                                   It.IsAny<string>()));

var repositoryPlugin = new RepositoryPlugin(mockApiHelper.Object);
repositoryPlugin.Login(new CredentialsInfo(), It.IsAny<string>());

Assert.IsTrue(repositoryPlugin.LoggedIn, 
    "LoggedIn property should be true after the user logs in.");

questionAnswers(3)

yourAnswerToTheQuestion