public void Should_Provide_Methods_Polymorphically() { var provider = new EmailProvider() + new OfflineProvider(); var id = P <IEmailFeature>(provider).Email("Hello"); Assert.AreEqual(1, id); id = provider.P <IEmailFeature>().Email("Hello"); Assert.AreEqual(2, id); id = provider.P <IEmailFeature>().Email("Hello"); Assert.AreEqual(1, id); }
public void Should_Provide_Methods() { var provider = new EmailProvider(); var id = P <IEmailFeature>(provider).Email("Hello"); Assert.AreEqual(1, id); id = provider.P <IEmailFeature>().Email("Hello"); Assert.AreEqual(2, id); }