コード例 #1
0
        public async void ShouldResolveAsync()
        {
            var resolverMock = new Mock <IHostResolver>();
            var resolver     = new CachingHostResolver(resolverMock.Object, 1000);

            await resolver.ResolveAsync("localhost");

            resolverMock.Verify(x => x.ResolveAsync("localhost"));
        }
コード例 #2
0
        public void ShouldResolveOnce()
        {
            var resolverMock = new Mock <IHostResolver>();
            var resolver     = new CachingHostResolver(resolverMock.Object, 5000);

            resolver.Resolve("localhost");
            resolver.Resolve("localhost");

            resolverMock.Verify(x => x.Resolve("localhost"), Times.Once);
        }
コード例 #3
0
        public void ShouldExpireCached()
        {
            var resolverMock = new Mock <IHostResolver>();
            var resolver     = new CachingHostResolver(resolverMock.Object, 1000);

            resolver.Resolve("localhost");
            Thread.Sleep(1500);
            resolver.Resolve("localhost");

            resolverMock.Verify(x => x.Resolve("localhost"), Times.Exactly(2));
        }
コード例 #4
0
        public async void ShouldResolveOnceMixedSyncFirst()
        {
            var resolverMock = new Mock <IHostResolver>();
            var resolver     = new CachingHostResolver(resolverMock.Object, 5000);

            resolver.Resolve("localhost");
            await resolver.ResolveAsync("localhost");

            resolver.Resolve("localhost");
            await resolver.ResolveAsync("localhost");

            resolverMock.Verify(x => x.Resolve("localhost"), Times.Once);
        }
コード例 #5
0
        public async void ShouldExpireCachedAsync()
        {
            var resolverMock = new Mock <IHostResolver>();
            var resolver     = new CachingHostResolver(resolverMock.Object, 1000);

            await resolver.ResolveAsync("localhost");

            await Task.Delay(1500);

            await resolver.ResolveAsync("localhost");

            resolverMock.Verify(x => x.ResolveAsync("localhost"), Times.Exactly(2));
        }