У меня есть библиотека COM, которую я должен ссылаться в своем приложении, и я пытаюсь имитировать свои интерфейсы.Mocking COM-интерфейсы с использованием Rhino Mocks
Я получаю исключение, когда я делаю это MockRepository.GenerateMock<IAmAComInterface>();
я не получаю исключение, когда я делаю это: MockRepository.GenerateDynamicMockWithRemoting<IAmAComInterface>();
, но ни один из моих ожиданий не проверяя.
Я что-то не так?
На данный момент у меня есть куча оберток для всех моих COM-интерфейсов, и я издеваюсь над ними, но мне бы очень хотелось, чтобы мне не пришлось обертывать все.
EDIT:
Исключения с GenerateMock: System.TypeLoadException
с сообщением:
The type is marked as eligible for type equivalence, but either it has generic parameters, or it is not a structure, COM imported interface, enumeration, or delegate.
При использовании провала теста GenerateDynamicMockWithRemoting всегда говорит ОЖИДАЕТСЯ: 1 Фактическое: 0 для любых ожиданий на COM интерфейс.
Использование Rhino.Mocks 3.6.
какие исключения? –
@Wim Coenen Отредактировано с учетом исключений и более подробной информации. – Adam
Являются ли эти COM-интерфейсы созданными в .NET и предназначены для экспорта в COM? Или это COM-объекты с созданными библиотеками типа .NET (через tlbimp)? – PatrickSteele