public void Process_to_PluginGraph()
        {
            var graph   = new PluginGraph();
            var scanner = new DefaultConventionScanner();

            var registry = new Registry();

            scanner.Process(typeof(Convention), registry);

            registry.As <IPluginGraphConfiguration>().Configure(graph);

            graph.Families.Has(typeof(IServer)).ShouldBeFalse();
            graph.Families.Has(typeof(IConvention)).ShouldBeTrue();

            var family = graph.Families[typeof(IConvention)];

            family.Instances.Count().ShouldBe(1);
        }
        public void Process_to_PluginGraph()
        {
            var graph   = new PluginGraph();
            var scanner = new DefaultConventionScanner();

            var registry = new Registry();

            scanner.Process(typeof(Convention), registry);

            registry.ShouldBeOfType <IPluginGraphConfiguration>().Configure(graph);

            Assert.IsFalse(graph.Families.Has(typeof(IServer)));
            Assert.IsTrue(graph.Families.Has(typeof(IConvention)));

            PluginFamily family = graph.Families[typeof(IConvention)];

            Assert.AreEqual(1, family.Instances.Count());
        }
        public void Process_to_PluginGraph()
        {
            var graph   = new PluginGraph();
            var scanner = new DefaultConventionScanner();

            var registry = new Registry();

            scanner.Process(typeof(Convention), registry);

            registry.ConfigurePluginGraph(graph);

            Assert.IsFalse(graph.PluginFamilies.Contains(typeof(IServer)));
            Assert.IsTrue(graph.PluginFamilies.Contains(typeof(IConvention)));

            PluginFamily family = graph.FindFamily(typeof(IConvention));

            family.Seal();
            Assert.AreEqual(1, family.InstanceCount);
        }