Teste unitário e verificação do valor da variável privada

Eu estou escrevendo testes de unidade com C #, NUnit e Rhino Mocks. Aqui estão as partes relevantes de uma classe que estou testando:

public class ClassToBeTested
{
    private IList<object> insertItems = new List<object>();

    public bool OnSave(object entity, object id)
    {
        var auditable = entity as IAuditable;
        if (auditable != null) insertItems.Add(entity);

        return false;            
    }
}

Eu quero testar os valores em insertItems após uma chamada para OnSave:

[Test]
public void OnSave_Adds_Object_To_InsertItems_Array()
{
     Setup();

     myClassToBeTested.OnSave(auditableObject, null);

     // Check auditableObject has been added to insertItems array            
}

Qual é a melhor prática para isso? Considerei adicionar insertItems como uma propriedade com um get público ou injetar uma List em ClassToBeTested, mas não tenho certeza se devo modificar o código para fins de teste.

Eu li muitos posts sobre como testar métodos privados e refatoração, mas essa é uma classe tão simples que me perguntei qual seria a melhor opção.

questionAnswers(6)

yourAnswerToTheQuestion