예제 #1
0
        public void DisposeHttpEndpointContextDisposesParent()
        {
            bool disposed       = false;
            var  requestContext = new TestRequestContext(); // TODO: kinda just tests the test...

            requestContext.OnDispose += delegate { disposed = true; };
            requestContext.Dispose();
            Assert.True(disposed);
        }
예제 #2
0
        public void DisposeEndpointContextDisposesStem()
        {
            var endpointContext    = new TestRequestContext();
            var stemStartResources = new StemsStartResourceFactory
            {
                RootResourceFactory = new DerivedRootsResourceFactory
                {
                    RootTypeGetter = new ManualTypeGetter(typeof(DisposableRoot))
                },
                StemsServices = new StemsServices
                {
                    ServiceGroup = new DefaultServiceGroup()
                }
            };

            var directory  = (IRestDirectory)stemStartResources.GetStartResource(endpointContext);
            var collection = directory.GetChild("Disposable");

            DisposableRoot.DisposeCalled = false;
            endpointContext.Dispose();
            Assert.True(DisposableRoot.DisposeCalled);
        }