Что делает Moq.Linq.MockRepository? - PullRequest
9 голосов
/ 21 апреля 2011

Я пытаюсь выяснить, что делает MockRepository.
Я вижу, что есть метод Create, который я понимаю, и он также имеет методы Of и OneOf, которые я не понимаю.
Что должно быть? Сам издеваться или Т?
Как должно выглядеть выражение? Это выражение установки?
Что именно я спрашиваю здесь? Это просто еще один способ создать макет или он отслеживает существующие макеты и выбирает их?

Ответы [ 2 ]

2 голосов
/ 17 июня 2011

Я думаю, что он используется для упрощения проверки нескольких макетов (из сортировки moq docs):

        var mockRepo = new Moq.MockRepository(MockBehavior.Default);
        var foo = mockRepo.Create<IFoo>();
        var bar = mockRepo.Create<IBar>();

настройка макетов и упражнения на макеты

        mockRepo.VerifyAll();

в любом случае, что вы пытаетесь достичь с помощью этого класса?

0 голосов
/ 31 января 2013

У меня тоже проблемы с MockRepository,. Возможно, у меня есть концептуальное недопонимание класса. Мой взгляд на MockRepository заключается в том, что он создает что-то похожее на шаблоны макетов.

Чтобы использовать примеры интерфейсов, предположим, что IFoo имеет несколько свойств и методов. Я хотел бы установить экземпляр макета шаблона на уровне тестового набора, который имеет разумное возвращаемое значение по умолчанию для каждого свойства и метода. Затем в каждом методе теста переопределите эти значения значениями, подходящими для данного теста. Это избавляет от необходимости устанавливать каждую IFoo макет в каждом тесте.

В предыдущем проекте я написал свой собственный фабричный класс, который делал это, но описание MockRepository звучит так же.

Не понимаю ли я MockRepository?

...