コード例 #1
0
        public void dispose_and_clear_all()
        {
            var cache = new TrackingTransientCache();

            var instance = new SmartInstance<Target>();
            var session = new FakeBuildSession();

            var t1 = cache.Get(typeof(Target), instance, session).As<Target>();
            var t2 = cache.Get(typeof(Target), instance, session).As<Target>();
            var t3 = cache.Get(typeof(Target), instance, session).As<Target>();

            cache.DisposeAndClear();

            cache.Tracked.Any().ShouldBeFalse();

            t1.WasDisposed.ShouldBeTrue();
            t2.WasDisposed.ShouldBeTrue();
            t3.WasDisposed.ShouldBeTrue();
        }