public void AdvisedSupportListenerMethodsAreCalledAppropriately()
{
IAdvisedSupportListener listener = MockRepository.GenerateMock<IAdvisedSupportListener>();
ProxyFactory factory = new ProxyFactory(new TestObject());
factory.AddListener(listener);
// must fire the Activated callback...
factory.GetProxy();
// must fire the AdviceChanged callback...
factory.AddAdvice(new NopInterceptor());
// must fire the InterfacesChanged callback...
factory.AddInterface(typeof(ISerializable));
listener.AssertWasCalled(x => x.Activated(Arg<AdvisedSupport>.Is.NotNull));
listener.AssertWasCalled(x => x.AdviceChanged(Arg<AdvisedSupport>.Is.NotNull));
listener.AssertWasCalled(x => x.InterfacesChanged(Arg<AdvisedSupport>.Is.NotNull));
}