Example #1
0
        public /* public for test */ InstanceDiscoveryManager(
            IHttpManager httpManager,
            IMatsTelemetryManager telemetryManager,
            bool shouldClearCaches,
            IUserMetadataProvider userMetadataProvider   = null,
            Uri userProvidedInstanceDiscoveryUri         = null,
            IKnownMetadataProvider knownMetadataProvider = null,
            INetworkCacheMetadataProvider networkCacheMetadataProvider = null,
            INetworkMetadataProvider networkMetadataProvider           = null)
        {
            _httpManager      = httpManager ?? throw new ArgumentNullException(nameof(httpManager));
            _telemetryManager = telemetryManager ?? throw new ArgumentNullException(nameof(telemetryManager));

            _userMetadataProvider         = userMetadataProvider;
            _knownMetadataProvider        = knownMetadataProvider ?? new KnownMetadataProvider();
            _networkCacheMetadataProvider = networkCacheMetadataProvider ?? new NetworkCacheMetadataProvider();

            _networkMetadataProvider = networkMetadataProvider ??
                                       new NetworkMetadataProvider(
                _httpManager,
                _telemetryManager,
                _networkCacheMetadataProvider,
                userProvidedInstanceDiscoveryUri);

            if (shouldClearCaches)
            {
                _networkCacheMetadataProvider.Clear();
            }
        }
Example #2
0
        public override void TestInitialize()
        {
            base.TestInitialize();

            _networkMetadataProvider      = Substitute.For <INetworkMetadataProvider>();
            _knownMetadataProvider        = Substitute.For <IKnownMetadataProvider>();
            _networkCacheMetadataProvider = Substitute.For <INetworkCacheMetadataProvider>();
            _userMetadataProvider         = Substitute.For <IUserMetadataProvider>();

            _expectedResult = new InstanceDiscoveryMetadataEntry()
            {
                Aliases          = new[] { "some_env.com", "some_env2.com" },
                PreferredCache   = "env",
                PreferredNetwork = "env"
            };

            _harness = base.CreateTestHarness();

            _testRequestContext = new RequestContext(_harness.ServiceBundle, Guid.NewGuid());
            _discoveryManager   = new InstanceDiscoveryManager(
                _harness.HttpManager,
                false,
                null,
                null,
                _knownMetadataProvider,
                _networkCacheMetadataProvider,
                _networkMetadataProvider);
        }