public void Creates_A_Typed_Event_Bus() { // Arrange var publicationStrategyMock = new Mock<IPublicationStrategy>(); var sut = new EventBus(publicationStrategyMock.Object); // Act/Assert using (new AssertionScope()) { sut.As<string>().Should().BeAssignableTo<IEventBus<string>>(); sut.As<Foo>().Should().BeAssignableTo<IEventBus<Foo>>(); sut.As<Bar>().Should().BeAssignableTo<IEventBus<Bar>>(); } }