public void InaccessibleTypeParameterCanBeUsed() { // This test is necessary for checking that the repository can be used with inaccessible type parameters. // See the bug in .NET Framework: https://connect.microsoft.com/VisualStudio/feedback/details/672411/bug-in-dynamic-dispatch-when-using-generic-type-parameters InternalAggregateRoot aggregateRoot = new InternalAggregateRoot(Guid.NewGuid()); aggregateRoot.ApplyEvent(domainEvent); var privateSut = new InternalDomainRepository(eventHandlerResolver); privateSut.ApplyChanges(aggregateRoot); domainEventHandler1.Received().Execute(domainEvent); domainEventHandler2.Received().Execute(domainEvent); }