Esempio n. 1
0
        public void GetPluginsForType_ValidExistentPluginType2Results_Returns2Results()
        {
            // arrange
            ILogManager lmMock = this.CreateLogManagerMock();
            PluginsConfigXml config = this.CreatePluginsConfigMock();
            FileXml pluginFile = new FileXml();
            pluginFile.FileName = Path.GetFileName( Assembly.GetExecutingAssembly().Location );
            pluginFile.Location = Path.GetDirectoryName( Assembly.GetExecutingAssembly().Location );
            config.PlugIns.Add( pluginFile );
            PluginManager pm = new PluginManager( lmMock, config );
            IEnumerable<Attribute> pluginsOne = null;
            IEnumerable<Attribute> pluginsTwo = null;

            // act
            pluginsOne = pm.GetPluginsForType( typeof( TestPluggableOne ) );
            pluginsTwo = pm.GetPluginsForType( typeof( TestPluggableTwo ) );

            // assert
            Assert.IsNotNull( pluginsOne );
            Assert.AreEqual( 2, pluginsOne.Count<Attribute>() );
            Assert.IsNotNull( pluginsTwo );
            Assert.AreEqual( 1, pluginsTwo.Count<Attribute>() );
        }