예제 #1
0
        public void AssertOrderTotalPrice(string itemPrice)
        {
            var placeOrderPage = UnityContainerFactory.GetContainer().Resolve <PlaceOrderPage>();
            var totalPrice     = double.Parse(itemPrice);

            placeOrderPage.AssertOrderTotalPrice(totalPrice);
        }
예제 #2
0
 public BaseTest()
 {
     Container = UnityContainerFactory.GetContainer();
     Container.RegisterInstance(Container);
     _currentTestExecutionProvider = new TestExecutionProvider();
     InitializeTestExecutionBehaviorObservers(_currentTestExecutionProvider, Container);
 }
        public static void Register(HttpConfiguration config)
        {
            //注册异常过滤器特性(全部webapi)
            config.Filters.Add(new CustomExceptionAttribute());
            //注册全局异常处理;不会覆盖异常过滤器特性
            config.Services.Replace(typeof(IExceptionHandler), new GlobalExceptionHandler());

            ////注册操作方法过滤器特性(一般不全局设置)
            //config.Filters.Add(new CustomActionAttribute());

            //注册容器
            config.DependencyResolver = new UnityDependencyResolver(UnityContainerFactory.GetContainer());


            //string origins = ConfigurationManager.AppSettings["cors:allowedOrigins"];
            //string headers = ConfigurationManager.AppSettings["cors:allowedHeaders"];
            //string methods = ConfigurationManager.AppSettings["cors:allowedMethods"];
            //config.EnableCors(new EnableCorsAttribute(origins, headers, methods));

            //config.EnableCors(new EnableCorsAttribute("*", "*", "*"));

            config.EnableCors();

            // Web API 配置和服务

            // Web API 路由
            config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
                );
        }
예제 #4
0
        public static void Register(HttpConfiguration config)
        {
            // Web API 配置和服务
            config.DependencyResolver = new UnityDependencyResolver(UnityContainerFactory.CreateContainer());


            // 将 Web API 配置为仅使用不记名令牌身份验证。
            config.SuppressDefaultHostAuthentication();//特性路由
            config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType));

            // Web API 路由
            config.MapHttpAttributeRoutes();

            //一般不指定action 因为restful 是以资源为目标的,没有操作的概念   操作是由httpMthod来实现
            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
                );

            config.Routes.MapHttpRoute(
                name: "UserApi",
                routeTemplate: "userapi/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional }
                );
        }
예제 #5
0
 public BaseTest()
 {
     this.container = UnityContainerFactory.GetContainer();
     this.container.RegisterInstance <IUnityContainer>(this.container);
     this.currentTestExecutionProvider = new TestExecutionProvider();
     this.InitializeTestExecutionBehaviorObservers(this.currentTestExecutionProvider);
 }
예제 #6
0
        protected override void OnStartup(StartupEventArgs e)
        {
            base.OnStartup(e);

            //显示初始化提示框
            GuoKun.CustomControls.CustomMessageBox messageBox = new GuoKun.CustomControls.CustomMessageBox("系统正在初始化······");
            messageBox.Show();
            this.DispatcherUnhandledException          += App_DispatcherUnhandledException;
            AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;

            //加载系统样式
            ResourceDictionary defaultDictionary = new ResourceDictionary()
            {
                Source = new Uri("/GuoKun.Themes;component/Themes/Default.xaml", UriKind.RelativeOrAbsolute),
            };

            this.Resources.MergedDictionaries.Add(defaultDictionary);

            //系统初始化
            BootstrapperConfiguration     bootstrapperConfiguration = ConfigurationManager.GetSection("account/bootstrapper") as BootstrapperConfiguration;
            CustomMefBootstrapper <Shell> bootstrapper = new CustomMefBootstrapper <Shell>(bootstrapperConfiguration);

            bootstrapper.Run(true);

            _log = UnityContainerFactory.GetUnityContainer().Resolve <ILog>();

            messageBox.Close();
            Application.Current.MainWindow.Show();
        }
예제 #7
0
 public ConvertMetricsForNuclearScienceSteps()
 {
     this.homePage =
         UnityContainerFactory.GetContainer().Resolve <HomePage>();
     this.kilowattHoursPage =
         UnityContainerFactory.GetContainer().Resolve <KilowattHoursPage>();
 }
예제 #8
0
 private static void RegisterServices()
 {
     _emailService          = UnityContainerFactory.GetContainer().Resolve <IEmailService>();
     _sportsService         = UnityContainerFactory.GetContainer().Resolve <ISportsService>();
     _transportationService = UnityContainerFactory.GetContainer().Resolve <ITransportationService>();
     _weatherService        = UnityContainerFactory.GetContainer().Resolve <IWeatherService>();
 }
 public ShippingAddressPageFillShippingBehaviour(
     ClientPurchaseInfo clientPurchaseInfo)
 {
     _shippingAddressPage =
         UnityContainerFactory.GetContainer().Resolve <ShippingAddressPage>();
     _clientPurchaseInfo = clientPurchaseInfo;
 }
예제 #10
0
        public void SetupTest()
        {
            UnityContainerFactory.GetContainer().RegisterType <IDriver, TestingFrameworkDriver>();
            UnityContainerFactory.GetContainer().RegisterType <INavigationService, TestingFrameworkDriver>();
            UnityContainerFactory.GetContainer().RegisterType <IBrowser, TestingFrameworkDriver>();
            UnityContainerFactory.GetContainer().RegisterType <ICookieService, TestingFrameworkDriver>();
            UnityContainerFactory.GetContainer().RegisterType <IDialogService, TestingFrameworkDriver>();
            UnityContainerFactory.GetContainer().RegisterType <IElementFinder, TestingFrameworkDriver>();
            UnityContainerFactory.GetContainer().RegisterType <IJavaScriptInvoker, TestingFrameworkDriver>();

            UnityContainerFactory.GetContainer().RegisterType <IInputSubmit, InputSubmit>();
            UnityContainerFactory.GetContainer().RegisterType <ISearch, Search>();
            UnityContainerFactory.GetContainer().RegisterType <IDiv, Div>();
            UnityContainerFactory.GetContainer().RegisterType <BingMainPage>();

            UnityContainerFactory.GetContainer().RegisterInstance(UnityContainerFactory.GetContainer());
            UnityContainerFactory.GetContainer().RegisterInstance(BrowserSettings.DefaultChomeSettings);
            _driver = UnityContainerFactory.GetContainer().Resolve <IDriver>();

            UnityContainerFactory.GetContainer().RegisterInstance(_driver);
            UnityContainerFactory.GetContainer().RegisterInstance <IBrowser>(_driver);
            UnityContainerFactory.GetContainer().RegisterInstance <ICookieService>(_driver);
            UnityContainerFactory.GetContainer().RegisterInstance <IDialogService>(_driver);
            UnityContainerFactory.GetContainer().RegisterInstance <IJavaScriptInvoker>(_driver);
            UnityContainerFactory.GetContainer().RegisterInstance <INavigationService>(_driver);
            UnityContainerFactory.GetContainer().RegisterInstance <IElementFinder>(_driver);

            // Register the concrete Unit Testing Framework.
            UnityContainerFactory.GetContainer().RegisterType <IAssert, MsTestAssert>();
        }
예제 #11
0
 public SignInPageLoginBehaviour()
 {
     this.signInPage =
         UnityContainerFactory.GetContainer().Resolve <SignInPage>();
     this.shippingAddressPage =
         UnityContainerFactory.GetContainer().Resolve <ShippingAddressPage>();
 }
예제 #12
0
 public static void RegisterPages()
 {
     Driver.StartBrowser(BrowserTypes.Chrome);
     UnityContainerFactory.GetContainer().RegisterType <HomePage>(new ContainerControlledLifetimeManager());
     UnityContainerFactory.GetContainer().RegisterType <KilowattHoursPage>(new ContainerControlledLifetimeManager());
     UnityContainerFactory.GetContainer().RegisterInstance <IWebDriver>(Driver.Browser);
 }
예제 #13
0
 public static void RegisterPages()
 {
     Console.WriteLine("Execute BeforeTestRun- RegisterPages");
     Driver.StartBrowser(BrowserTypes.Chrome);
     UnityContainerFactory.GetContainer().RegisterType <HomePage>(new ContainerControlledLifetimeManager());
     UnityContainerFactory.GetContainer().RegisterType <KilowattHoursPage>(new ContainerControlledLifetimeManager());
 }
 public static void AnalyzeFor <TExceptionHander>(Action action)
     where TExceptionHander : Handler, new()
 {
     using (UnityContainerFactory.GetContainer().Resolve <TestsExceptionsAnalyzerContext <TExceptionHander> >())
     {
         action();
     }
 }
 public void ClassInit()
 {
     UnityContainerFactory.GetContainer().RegisterType <HomePage>();
     UnityContainerFactory.GetContainer().RegisterType <ArticlePage>();
     UnityContainerFactory.GetContainer().RegisterType <CategoryPage>();
     _driver = new ChromeDriver();
     UnityContainerFactory.GetContainer().RegisterInstance <IWebDriver>(_driver);
 }
예제 #16
0
        public static UnityResolver CreateResolver()
        {
            var container = UnityContainerFactory.CreateContainer();

            var dependancyResolver = new UnityResolver(container);

            return(dependancyResolver);
        }
예제 #17
0
        public void SearchForAutomateThePlanet()
        {
            var bingMainPage = UnityContainerFactory.GetContainer().Resolve <BingMainPage>();

            bingMainPage.Navigate();
            bingMainPage.Search("Automate The Planet");
            bingMainPage.AssertResultsCountIsAsExpected("422,000 results");
        }
        public static void AssemblyInit(TestContext context)
        {
            var container = UnityContainerFactory.GetContainer();

            UnityContainerFactory.GetContainer().RegisterType <ITestBehaviorObserver, ExecutionEngineBehaviorObserver>(Guid.NewGuid().ToString());
            UnityContainerFactory.GetContainer().RegisterType <ITestExecutionEngine, TestExecutionEngine>(Guid.NewGuid().ToString());
            UnityContainerFactory.GetContainer().RegisterInstance(container);
        }
예제 #19
0
        protected override IUnityContainer CreateContainer()
        {
            var container = base.CreateContainer();

            UnityContainerFactory.Init(container);

            return(container);
        }
예제 #20
0
        private static void InitializeTestExecutionBehaviours(IExecutionProvider testExecutionProvider)
        {
            var observers = UnityContainerFactory.GetCurrentContainer().ResolveAll <ITestBehaviourObserver>();

            foreach (var observer in observers)
            {
                observer.Subscribe(testExecutionProvider);
            }
        }
예제 #21
0
 private void MakeSuccessorMainHandler()
 {
     for (var i = 0; i < GetType().GetGenericArguments().Length; i++)
     {
         var handler = ScopeStack.Pop();
         UnityContainerFactory.GetContainer().RegisterInstance(ExceptionAnalyzerConstants.MainApplicationHandlerName, handler.Successor);
         handler.ClearSuccessor();
     }
 }
예제 #22
0
        public void Configuration(IAppBuilder app)
        {
            var container = UnityContainerFactory.Create();

            ConfigureWebApi(app, container);

            container
            .Resolve <IDeskStorageCleanupWorker>()
            .Start();
        }
예제 #23
0
        public static void BeforeTestRun()
        {
            SetUp();

            //register pages
            UnityContainerFactory.GetContainer().RegisterType <CommonPage>(new ContainerControlledLifetimeManager());

            Log.Information("******************************************");
            Log.Information("\nNew Test Cycle :");
        }
예제 #24
0
        protected void AddHandlerInfrontOfChain <TNewHandler>()
            where TNewHandler : Handler, new()
        {
            var mainApplicationHandler = UnityContainerFactory.GetContainer().Resolve <Handler>(ExceptionAnalyzerConstants.MainApplicationHandlerName);
            var newHandler             = UnityContainerFactory.GetContainer().Resolve <TNewHandler>();

            newHandler.SetSuccessor(mainApplicationHandler);
            UnityContainerFactory.GetContainer().RegisterInstance <Handler>(ExceptionAnalyzerConstants.MainApplicationHandlerName, newHandler);
            ScopeStack.Push(newHandler);
        }
예제 #25
0
        protected void Application_Start()
        {
            GlobalConfiguration.Configure(WebApiConfig.Register);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            var container = UnityContainerFactory.Create();

            GlobalConfiguration.Configuration.DependencyResolver = new UnityResolver(container);
        }
예제 #26
0
        public TestBase()
        {
            if (!UnityContainerFactory.IsContainerEmpty())
            {
                UnityContainerFactory.ResetContainer();
            }

            Container = UnityContainerFactory.GetCurrentContainer();
            Container.RegisterInstance(Container);
            _currentTestExecutionProvider = new TestExecutionProvider();
        }
예제 #27
0
 public VMMonthlyManagement(IEventAggregator eventAggregator)
 {
     this._start               = DateTime.Now.AddMonths(-3).ToString("yyyy-MM");
     this._end                 = DateTime.Now.Date.ToString("yyyy-MM");
     this._monthlys            = new ObservableCollection <MonthlyModel>();
     this._monthlyManager      = UnityContainerFactory.GetUnityContainer().Resolve <IMonthlyManager>();
     this._eventAggregator     = eventAggregator;
     this._scptManifestRefresh = this._eventAggregator.GetEvent <ManifestRefreshEvent>().Subscribe(this._manifestRefresh, ThreadOption.UIThread);
     this.Refresh              = new DelegateCommand <string>(RefreshExecute, CanExecuteRefresh);
     this.RefreshMonthly(false);
 }
예제 #28
0
        public static void BeforeTestRun()
        {
            SetUp();

            //Registering pages
            UnityContainerFactory.GetContainer().RegisterType <LandingPage>(new ContainerControlledLifetimeManager());
            UnityContainerFactory.GetContainer().RegisterType <SignInPage>(new ContainerControlledLifetimeManager());

            Log.Information("");
            Log.Information("\nNew Test Cycle :");
        }
        public void NavigateToItemUrl(Table productsTable)
        {
            var itemPage = UnityContainerFactory.GetContainer().Resolve <ItemPage>();
            var products = productsTable.CreateDynamicSet();

            foreach (var product in products)
            {
                itemPage.Navigate(string.Concat(product.Url, "?", product.AffilicateCode));
                itemPage.ClickBuyNowButton();
            }
        }
        public static void AssemblyInit(TestContext context)
        {
            var container = UnityContainerFactory.GetContainer();

            UnityContainerFactory.GetContainer().RegisterType <ITestBehaviorObserver, ExecutionEngineBehaviorObserver>(Guid.NewGuid().ToString());
            UnityContainerFactory.GetContainer().RegisterType <ITestExecutionEngine, TestExecutionEngine>(Guid.NewGuid().ToString());
            UnityContainerFactory.GetContainer().RegisterInstance(container);

            // Unsubscribe execution engine observer and start single instance of the browser for the whole execution.
            ////testingFrameworkTestExecutionEngine = new TestExecutionEngine(container);
            ////testingFrameworkTestExecutionEngine.RegisterDependencies(Browsers.Chrome);
        }
 public void ConfiguredContainer_LoadsFromConfigFile()
 {
     IUnityContainer container = new UnityContainerFactory().CreateConfiguredContainer();
     Assert.NotNull(container.Resolve<IFormsAuthentication>());
 }