Beispiel #1
0
        public PluginGraph ToPluginGraph()
        {
            var builder = new PluginGraphBuilder();

            builder.AddScanner(this);
            return(builder.Build());
        }
Beispiel #2
0
        public static PluginGraph BuildGraphFromAssembly(Assembly assembly)
        {
            var builder = new PluginGraphBuilder();
            var scanner = new AssemblyScanner();

            scanner.Assembly(assembly);

            builder.AddScanner(scanner);

            return(builder.Build());
        }
        private void Scan(Action <AssemblyScanner> action)
        {
            var scanner = new AssemblyScanner();

            action(scanner);

            scanner.ExcludeNamespaceContainingType <ScanningRegistry>();
            scanner.Convention <FakeConvention>();

            var builder = new PluginGraphBuilder();

            builder.AddScanner(scanner);
            theGraph = builder.Build();
        }
Beispiel #4
0
        private void Scan(Action <AssemblyScanner> action)
        {
            var scanner = new AssemblyScanner();

            scanner.Convention <FamilyAttributeScanner>();
            scanner.Convention <PluggableAttributeScanner>();

            action(scanner);

            scanner.ExcludeNamespaceContainingType <ScanningRegistry>();

            var builder = new PluginGraphBuilder();

            builder.AddScanner(scanner);
            theGraph = builder.Build();

            theGraph.Log.AssertFailures();
        }
        public void CanGetPluginFamilyFromPluginGraphWithNoParameters()
        {
            var builder = new PluginGraphBuilder();
            var scanner = new AssemblyScanner();

            scanner.Assembly(GetType().Assembly);

            builder.AddScanner(scanner);
            var graph = builder.Build();

            graph.Families[typeof(IGenericService <int>)].ShouldBeTheSameAs(
                graph.Families[typeof(IGenericService <int>)]);

            graph.Families[typeof(IGenericService <string>)].ShouldBeTheSameAs(
                graph.Families[typeof(IGenericService <string>)]);

            graph.Families[typeof(IGenericService <>)].ShouldBeTheSameAs(
                graph.Families[typeof(IGenericService <>)]);
        }