示例#1
0
        public void UsingDefaultCtor_AutoCrawlEnabled_Should_Be_True_And_AssembliesToCrawl_Should_Be_Empty()
        {
            //Arrange

            //Act
            var host = new Composer.ComposerHost();

            //Assert
            host.AutoCrawlEnabled.Should().BeTrue();
            host.AssembliesToInclude.Should().NotBeNull();
            host.AssembliesToInclude.Should().BeEmpty();
        }
示例#2
0
        public ComposerHostMoq()
        {
            AutoMock = AutoMock.GetLoose();
            var instance = new Composer.ComposerHost();

            var field = typeof(Composer.ComposerHost).GetField("_rootResolver", BindingFlags.NonPublic | BindingFlags.Instance);
            var scope = AutoMock.Create <ILifetimeScope>();

            field.SetValue(instance, scope);

            var prop = typeof(Composer.ComposerHost).GetProperty("Current");

            prop.SetValue(null, instance);
        }
        public void SetUp()
        {
            // Reset static properties
            typeof(Composer.ComposerHost)
            .GetProperty("Current")
            .GetSetMethod(true)
            .Invoke(null, new object[] { null });

            //Reset Handlerbars static state
            Handlebars.Configuration.Helpers.Clear();
            Handlebars.Configuration.BlockHelpers.Clear();


            // Default setup for all required entities
            Composer.ComposerHost host = new Composer.ComposerHost(Assembly.GetExecutingAssembly());

            // Mock AspNetConfigManager
            Mock <IAspNetConfigurationManager> aspNetConfigManagerMock = new Mock <IAspNetConfigurationManager>(MockBehavior.Strict);

            aspNetConfigManagerMock
            .Setup(config => config.Configure(It.IsAny <ILifetimeScope>(), It.IsAny <IViewEngine>(), It.IsAny <MediaTypeFormatter>()));
            host.SetAspNetConfigurationManager(aspNetConfigManagerMock.Object);

            // Mock AssemblyHelper
            var assemblyHelper = new Mock <Composer.AssemblyHelper>();

            assemblyHelper.Setup(helper => helper.SafeLoadAssemblies(It.IsAny <string>()))
            .Returns(() => new _Assembly[0]);
            host.SetAssemblyHelper(assemblyHelper.Object);

            // Mock Composer Environment
            var composerEnvironment = ComposerEnvironmentFactory.Create();

            host.SetComposerEnvironment(composerEnvironment.Object);

            //Add some additionnal dependencies expected to be set by a plugin (what?!)
            var lookupService = new Mock <ILookupService>(MockBehavior.Strict);

            host.Register <ILookupService>(lookupService.Object);
            var currencyProviderMock = new Mock <ICurrencyProvider>(MockBehavior.Strict);

            host.Register <ICurrencyProvider>(currencyProviderMock.Object);
            _composerHost      = host;
            _serviceLocatorMoq = new ServiceLocatorMoq();
        }
示例#4
0
        public void SetUp()
        {
            // Reset static properties
            typeof(Composer.ComposerHost)
            .GetProperty("Current")
            .GetSetMethod(true)
            .Invoke(null, new object[] { null });

            TestPlugin.WasDiscovered = false;

            // Default setup for all required entities
            _composerHost = new Composer.ComposerHost(Assembly.GetExecutingAssembly());

            // Mock AspNetConfigManager
            _aspNetConfigManagerMock = new Mock <IAspNetConfigurationManager>();
            _aspNetConfigManagerMock.Setup(_configureCall);
            _composerHost.SetAspNetConfigurationManager(_aspNetConfigManagerMock.Object);

            // Mock AssemblyHelper
            var assemblyHelper = new Mock <Composer.AssemblyHelper>();

            assemblyHelper.Setup(helper => helper.SafeLoadAssemblies(It.IsAny <string>()))
            .Returns(() => new _Assembly[0]);
            _composerHost.SetAssemblyHelper(assemblyHelper.Object);

            // Mock Composer Environment
            var composerEnvironment = ComposerEnvironmentFactory.Create();

            _composerHost.SetComposerEnvironment(composerEnvironment.Object);

            //Add some additional dependencies expected to be set by a plugin (what?!)
            var lookupService = new Mock <ILookupService>(MockBehavior.Strict);

            _composerHost.Register <ILookupService>(lookupService.Object);
            var currencyProviderMock = new Mock <ICurrencyProvider>(MockBehavior.Strict);

            _composerHost.Register <ICurrencyProvider>(currencyProviderMock.Object);
            _serviceLocatorMoq = new ServiceLocatorMoq();
        }
        public void Setup()
        {
            _composerHost   = new Composer.ComposerHost();
            _assemblyHelper = new Composer.AssemblyHelper();
            var assemblies = new List <_Assembly>();

            // Load composer assemblies
            var loadedAssemblies = _assemblyHelper.SafeLoadAssemblies(ComposerDllRegex);

            assemblies.AddRange(loadedAssemblies);

            // Load other assemblies next to executing assembly
            assemblies.AddRange(_assemblyHelper.SafeLoadAssemblies());

            // Load specific assemblies
            assemblies.Add(Assembly.GetExecutingAssembly());

            // Add assemblies to dictionary
            foreach (var assembly in assemblies)
            {
                _appDomainAssemblies[assembly.FullName] = assembly;
            }
        }
示例#6
0
        public void UsingParametizedCtor_AutoCrawlEnabled_Should_Be_False_And_AssembliesToCrawl_Should_Be_Equal()
        {
            //Arrange
            var assemblyMock = new Mock <_Assembly>();

            var assemblies = new[]
            {
                GetType().Assembly,
                assemblyMock.Object,
                assemblyMock.Object
            };

            //Act
            var host = new Composer.ComposerHost(assemblies);

            //Assert
            host.AutoCrawlEnabled.Should().BeFalse();
            host.AssembliesToInclude.Should().NotBeNull();

            foreach (var assembly in assemblies)
            {
                host.AssembliesToInclude.Should().Contain(assembly);
            }
        }