/// <summary>
        /// Starts the Web API Application
        /// </summary>
        protected void Application_Start()
        {
            GlobalConfiguration.Configure(WebApiConfig.Register);

            ConfigurationSettingsEntity configurationSettings = new ConfigurationSettingsEntity(ConfigurationManager.AppSettings);

            // Configure Log4Net
            ConfigureLog4Net(configurationSettings.Log4NetConfigurationFile, configurationSettings.ShouldWatchLog4NetConfigurationFile);
        }
        /// <summary>
        /// Constructs a new instance of the DependencyRegistrar class
        /// </summary>
        /// <param name="configurationSettings">Configuration settings needed for creating instances</param>
        public DependencyRegistrar(ConfigurationSettingsEntity configurationSettings)
        {
            if (configurationSettings == null)
            {
                throw new ArgumentNullException("configurationSettings");
            }

            _configurationSettings = configurationSettings;
        }
        public void Load_Positive_Good()
        {
            // ARRANGE
            ConfigurationSettingsEntity configurationSettings = new ConfigurationSettingsEntity(ConfigurationManager.AppSettings);

            DependencyRegistrar tester = new DependencyRegistrar(configurationSettings);

            var modules = new INinjectModule[] { tester };

            // ACT
            var kernel = new StandardKernel(modules);

            // ASSERT
            Assert.NotNull(kernel);
        }
Ejemplo n.º 4
0
        public void Constructor_Negative_NullConfigurationSettingsEntity()
        {
            // ARRANGE
            const string EXPECTED_EXCEPTION_PARAM             = "configurationSettings";
            ConfigurationSettingsEntity configurationSettings = null;
            DependencyRegistrar         tester = null;

            ArgumentNullException actualException = null;

            // ACT
            actualException = Assert.Throws <ArgumentNullException>(() => tester = new DependencyRegistrar(configurationSettings)) as ArgumentNullException;

            // ASSERT
            Assert.NotNull(actualException);
            Assert.Equal(EXPECTED_EXCEPTION_PARAM, actualException.ParamName);
        }
        public void Constructor_Positive_Good()
        {
            // ARRANGE
            ConfigurationSettingsEntity tester = null;

            NameValueCollection fakeValues = new NameValueCollection();

            fakeValues.Add("APIKey", "6CB7E1F1-B10D-4935-8253-A83E11021F43");
            fakeValues.Add("log4NetConfigurationFile", @"C:\Repository\Small Biz Receipt Tracking\trunk\SmallBizReceiptTrackingAPI\SmallBizReceiptTrackingAPI\bin\log4net.config");
            fakeValues.Add("shouldWatchLog4NetConfigurationFile", "true");

            // ACT
            tester = new ConfigurationSettingsEntity(fakeValues);

            // ASSERT
            Assert.NotNull(tester);
        }
        public void Constructor_Negative_NullValues()
        {
            // ARRANGE
            const string EXCEPTION_PARAM       = "configurationSettings";
            ConfigurationSettingsEntity tester = null;

            NameValueCollection fakeValues = null;

            ArgumentNullException actualException = null;

            // ACT
            actualException = Assert.Throws <ArgumentNullException>(() => tester = new ConfigurationSettingsEntity(fakeValues)) as ArgumentNullException;


            // ASSERT
            Assert.NotNull(actualException);
            Assert.Equal(EXCEPTION_PARAM, actualException.ParamName);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Creates the kernel that will manage your application.
        /// </summary>
        /// <returns>The created kernel.</returns>
        private static IKernel CreateKernel()
        {
            ConfigurationSettingsEntity configurationSettings = new ConfigurationSettingsEntity(ConfigurationManager.AppSettings);
            var modules = new INinjectModule[] { new DependencyResolution.DependencyRegistrar(configurationSettings) };
            var kernel  = new StandardKernel(modules);

            try
            {
                kernel.Bind <Func <IKernel> >().ToMethod(ctx => () => new Bootstrapper().Kernel);
                kernel.Bind <IHttpModule>().To <HttpApplicationInitializationHttpModule>();

                GlobalConfiguration.Configuration.DependencyResolver = new NinjectDependencyResolver(kernel);
                return(kernel);
            }
            catch
            {
                kernel.Dispose();
                throw;
            }
        }