示例#1
0
        public async Task ResetBlacklistForHostShouldNotFailNorThrowException()
        {
            var selector = new DnsServiceTargetSelectorReal(new FakeDnsSrvQuerier(), new DnsSrvSortResult(), 10, CreateLoggers.CreateILoggerFromNLog());
            var ret1     = await selector.SelectHostAsync(new DnsSrvServiceDescription("service", ProtocolType.Tcp, "domain"));

            await selector.ResetBlacklistForHostAsync(ret1);

            var ret2 = await selector.SelectHostAsync(new DnsSrvServiceDescription("service", ProtocolType.Tcp, "domain"));

            Assert.AreEqual(ret1, ret2);
        }
示例#2
0
        public async Task ResetBlacklistForHostAfterAllHostPutInQuaranine()
        {
            var selector = new DnsServiceTargetSelectorReal(new FakeDnsSrvQuerier(), new DnsSrvSortResult(), 10, CreateLoggers.CreateILoggerFromNLog());
            var save     = await selector.SelectHostAsync(new DnsSrvServiceDescription("service", ProtocolType.Tcp, "domain"));

            var ret = save;

            do
            {
                await selector.BlacklistHostForAsync(ret, new TimeSpan(1, 1, 1));

                ret = await selector.SelectHostAsync(new DnsSrvServiceDescription("service", ProtocolType.Tcp, "domain"));
            }while (ret != null);

            ret = await selector.SelectHostAsync(new DnsSrvServiceDescription("service", ProtocolType.Tcp, "domain"));

            Assert.IsNull(ret);
            await selector.ResetBlacklistForHostAsync(save);

            ret = await selector.SelectHostAsync(new DnsSrvServiceDescription("service", ProtocolType.Tcp, "domain"));

            Assert.IsNotNull(ret);
        }