I am writing an event publisher for our application which internally uses Azure C# EventHubClient.
I want to unit test that my event gets translated correctly into EventData object (Properties + Body) as well as some other features. Long story short, I need some way to create a mock for EventHubClient. Unfortunately, there does not seem to be a simple way of doing that:
- EventHubClient does not implement any relevant interface so using something like Moq or NSubstitute to create a mock will not work.
- EventHubClient is an abstract class with internal constructor so I cannot extend it and create a custom mock.
In theory, I could create a wrapper interface and class around the methods I want to use, but it means having more code to maintain. Does anybody know about a better way of unit testing with EventHubClient?