public void service_on_dispose_remove_itself_from_iSite_container()
        {
            var svc = new ChangeTrackingService();

            var iContainer = MockRepository.GenerateMock<IContainer>();
            iContainer.Expect( obj => obj.Remove( svc ) ).Repeat.Once();

            var iSite = MockRepository.GenerateStub<ISite>();
            iSite.Expect( obj => obj.Container ).Return( iContainer ).Repeat.Any();

            svc.Site = iSite;

            svc.Dispose();

            iContainer.VerifyAllExpectations();
        }