예제 #1
0
        public virtual void SetUp()
        {
            _physicalRootPathResolver = _physicalRootPathResolver.Fake();
            var rootPathProvider        = new VoterRootPathProvider();
            var webConfigFile           = new FileInfo(Path.Combine(rootPathProvider.GetRootPath(), "web.config"));
            var virtualDirectoryMapping = new VirtualDirectoryMapping(webConfigFile.DirectoryName, true, webConfigFile.Name);
            var webConfigurationFileMap = new WebConfigurationFileMap();

            webConfigurationFileMap.VirtualDirectories.Add("/", virtualDirectoryMapping);
            var configuration = WebConfigurationManager.OpenMappedWebConfiguration(webConfigurationFileMap, "/");

            _sut = CompositionRoot.Compose(configuration, _physicalRootPathResolver);
        }
예제 #2
0
        public static IContainer Compose(System.Configuration.Configuration configuration, IPhysicalRootPathResolver physicalRootPathResolver)
        {
            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }
            if (physicalRootPathResolver == null)
            {
                throw new ArgumentNullException(nameof(physicalRootPathResolver));
            }

            var builder           = new ContainerBuilder();
            var appSettingsReader = new AppSettingsReader(configuration);

            builder.RegisterModule <CommonModule>();
            builder.RegisterModule <SecurityModule>();
            builder.RegisterModule <NancyModule>();
            builder.RegisterModule(new DataModule(appSettingsReader));
            builder.RegisterModule <DomainModule>();

            return(builder.Build());
        }
예제 #3
0
 public static IContainer Compose(IPhysicalRootPathResolver physicalRootPathResolver)
 {
     return(Compose(WebConfigurationManager.OpenWebConfiguration("~/"), physicalRootPathResolver));
 }
예제 #4
0
 public Bootstrapper()
 {
     _rootPathResolver = new HttpRuntimePhysicalRootPathResolver();
     _container        = CompositionRoot.Compose(_rootPathResolver);
 }