Почему MSTest и TestDriven.NET ведут себя по-разному, используя этот код? - PullRequest
2 голосов
/ 04 февраля 2009

Проверьте этот код:

internal static readonly Dictionary<Type, Func<IModel>> typeToCreator = new Dictionary<Type, Func<IModel>>();
protected static object _lock;        


public virtual void Register<T>(Func<IModel> creator)
{
    lock (_lock)
    {
    if (typeToCreator.ContainsKey(typeof(T)))
        typeToCreator[typeof(T)] = creator;
    else
        typeToCreator.Add(typeof(T), creator);
    }
}

Когда я использую, запустите код в этом тесте (testframework - MSTest):

[TestMethod]
public void Must_Be_BasePresenterType()
{
     var sut = new ListTilbudPresenter(_tilbudView);
     Assert.IsInstanceOfType(sut, typeof(BasePresenter));
}

... MSTest передает его, а TestDriven.NET дает сбой, потому что _lock равен нулю.

Почему MSTest НЕ проваливает тест ???

...