示例#1
0
        private IDiscoverableCollection <T> CreateDiscoverableCollection <T>(DiscoverableCollectionElement config)
        {
            var discoverableCollection = new ReflectionDiscoverableCollection <T>(InstantiateLogger());

            discoverableCollection.IgnoredTypes.AddRange(ToEnumerable(config.IgnoredTypes));

            // config.DiscoveryLocation (collection specific) overrides Configuration.DiscoveryLocation (on main <glimpse> node)
            var locationCascade = string.IsNullOrEmpty(config.DiscoveryLocation)
                                       ? string.IsNullOrEmpty(Configuration.DiscoveryLocation)
                                             ? null
                                             : Configuration.DiscoveryLocation
                                       : config.DiscoveryLocation;

            if (locationCascade != null)
            {
                discoverableCollection.DiscoveryLocation = locationCascade;
            }

            discoverableCollection.AutoDiscover = config.AutoDiscover;
            if (discoverableCollection.AutoDiscover)
            {
                discoverableCollection.Discover();
            }

            return(discoverableCollection);
        }
示例#2
0
        public void ReturnDefaultIgnoredTypes()
        {
            var element      = new DiscoverableCollectionElement();
            var ignoredTypes = element.IgnoredTypes;

            Assert.NotNull(ignoredTypes);
            Assert.Empty(ignoredTypes);
        }
示例#3
0
        public void GetSetDiscoveryLocation()
        {
            var location = "anything";
            var element  = new DiscoverableCollectionElement();

            element.DiscoveryLocation = location;

            Assert.Equal(location, element.DiscoveryLocation);
        }
示例#4
0
        public void GetSetIgnoredTypes()
        {
            var types = new TypeElementCollection();

            var element = new DiscoverableCollectionElement();

            element.IgnoredTypes = types;

            Assert.Equal(types, element.IgnoredTypes);
        }
示例#5
0
        public void GetSetAutoDiscover()
        {
            var ad = false;

            var element = new DiscoverableCollectionElement();


            element.AutoDiscover = ad;

            Assert.Equal(ad, element.AutoDiscover);
        }
示例#6
0
        public void GetSetSerializationConverters()
        {
            var section = new Section();

            var element = new DiscoverableCollectionElement {
                AutoDiscover = false
            };

            section.SerializationConverters = element;

            Assert.Equal(element, section.SerializationConverters);
        }
示例#7
0
        public void SetClientScriptsElement()
        {
            var scripts = new DiscoverableCollectionElement()
            {
                AutoDiscover = false
            };

            var section = new Section();

            section.ClientScripts = scripts;

            Assert.Equal(scripts, section.ClientScripts);
        }
示例#8
0
        public void GetSetTabs()
        {
            var section = new Section();

            var element = new DiscoverableCollectionElement()
            {
                AutoDiscover = false
            };

            section.Tabs = element;

            Assert.Equal(element, section.Tabs);
        }
示例#9
0
        public void ReturnDefaultAutoDiscoverValue()
        {
            var element = new DiscoverableCollectionElement();

            Assert.True(element.AutoDiscover);
        }
示例#10
0
        public void ReturnDefaultDiscoveryLocation()
        {
            var element = new DiscoverableCollectionElement();

            Assert.Empty(element.DiscoveryLocation);
        }