Пример #1
0
        public void should_destroy_and_dispose_system()
        {
            var observableGroupManager = Substitute.For <IObservableGroupManager>();
            var threadHandler          = Substitute.For <IThreadHandler>();
            var observableScheduler    = Substitute.For <IUpdateScheduler>();
            var mockSystem             = Substitute.For <IBasicEntitySystem>();
            var mockDisposable         = Substitute.For <IDisposable>();

            var systemHandler = new BasicEntitySystemHandler(observableGroupManager, threadHandler, observableScheduler);

            systemHandler._systemSubscriptions.Add(mockSystem, mockDisposable);
            systemHandler.DestroySystem(mockSystem);

            mockDisposable.Received(1).Dispose();
            Assert.Equal(0, systemHandler._systemSubscriptions.Count);
        }